From 379bc0b0a788aae2e09443deb80a2bd886bf259b Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Fri, 20 Oct 2023 15:05:55 +0200 Subject: [PATCH 01/74] draft KYC verifier --- src/utils/KYCVerifier.sol | 169 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 169 insertions(+) create mode 100644 src/utils/KYCVerifier.sol diff --git a/src/utils/KYCVerifier.sol b/src/utils/KYCVerifier.sol new file mode 100644 index 0000000..a0d95b6 --- /dev/null +++ b/src/utils/KYCVerifier.sol @@ -0,0 +1,169 @@ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ████████████████████████ ██████████ +// ████████████████████████ ██████████ +// ████████████████████████ ██████████ +// ████████████████████████ ██████████ +// ████████████████████ +// ████████████████████ +// ████████████████████ +// ████████████████████ +// +// +// █████╗ ███╗ ██╗ ██████╗ ████████╗██╗ ██╗███████╗██████╗ ██████╗ ██╗ ██████╗ ██████╗██╗ ██╗ +// ██╔══██╗████╗ ██║██╔═══██╗╚══██╔══╝██║ ██║██╔════╝██╔══██╗██╔══██╗██║ ██╔═══██╗██╔════╝██║ ██╔╝ +// ███████║██╔██╗ ██║██║ ██║ ██║ ███████║█████╗ ██████╔╝██████╔╝██║ ██║ ██║██║ █████╔╝ +// ██╔══██║██║╚██╗██║██║ ██║ ██║ ██╔══██║██╔══╝ ██╔══██╗██╔══██╗██║ ██║ ██║██║ ██╔═██╗ +// ██║ ██║██║ ╚████║╚██████╔╝ ██║ ██║ ██║███████╗██║ ██║██████╔╝███████╗╚██████╔╝╚██████╗██║ ██╗ +// ╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝╚═════╝ ╚══════╝ ╚═════╝ ╚═════╝╚═╝ ╚═╝ +// + +/** + * @title KYCVerifier + * @author anotherblock Technical Team + * @notice anotherblock contract responsible for verifying signature validity + * + */ + +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +/* Openzeppelin Contract */ +import {AccessControlUpgradeable} from "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol"; +import {ECDSA} from "@openzeppelin/contracts/utils/cryptography/ECDSA.sol"; + +/* anotherblock Library */ +import {ABErrors} from "src/libraries/ABErrors.sol"; + +/* anotherblock Interfaces */ +import {IKYCVerifier} from "src/utils/IKYCVerifier.sol"; + +contract KYCVerifier is IKYCVerifier, AccessControlUpgradeable { + using ECDSA for bytes32; + + // _____ __ __ + // / ___// /_____ _/ /____ _____ + // \__ \/ __/ __ `/ __/ _ \/ ___/ + // ___/ / /_/ /_/ / /_/ __(__ ) + // /____/\__/\__,_/\__/\___/____/ + + /// @dev Default signer address + address public defaultSigner; + + /// @dev anotherblock Admin Role + bytes32 public constant AB_ADMIN_ROLE = keccak256("AB_ADMIN_ROLE"); + + /// @dev Storage gap used for future upgrades (30 * 32 bytes) + uint256[30] __gap; + + // ______ __ __ + // / ____/___ ____ _____/ /________ _______/ /_____ _____ + // / / / __ \/ __ \/ ___/ __/ ___/ / / / ___/ __/ __ \/ ___/ + // / /___/ /_/ / / / (__ ) /_/ / / /_/ / /__/ /_/ /_/ / / + // \____/\____/_/ /_/____/\__/_/ \__,_/\___/\__/\____/_/ + + /** + * @notice + * Contract Constructor + */ + /// @custom:oz-upgrades-unsafe-allow constructor + constructor() { + _disableInitializers(); + } + + /** + * @notice + * Contract Initializer + * + * @param _defaultSigner allowlist generator signer + * + */ + function initialize(address _defaultSigner) external initializer { + if (_defaultSigner == address(0)) revert ABErrors.INVALID_PARAMETER(); + defaultSigner = _defaultSigner; + + // Initialize Access Control + __AccessControl_init(); + _setupRole(DEFAULT_ADMIN_ROLE, msg.sender); + } + + // ______ __ __ ______ __ _ + // / ____/ __/ /____ _________ ____ _/ / / ____/_ ______ _____/ /_(_)___ ____ _____ + // / __/ | |/_/ __/ _ \/ ___/ __ \/ __ `/ / / /_ / / / / __ \/ ___/ __/ / __ \/ __ \/ ___/ + // / /____> Date: Tue, 24 Oct 2023 12:23:51 +0200 Subject: [PATCH 02/74] reviewed KYC Sig design --- src/libraries/ABErrors.sol | 3 + src/token/ERC721/ERC721ABOE.sol | 11 +- src/utils/ABVerifier.sol | 41 +++++++ src/utils/IABVerifier.sol | 25 +++++ src/utils/KYCVerifier.sol | 169 ----------------------------- test/token/ERC721/ERC721ABOE.t.sol | 33 ++++-- 6 files changed, 105 insertions(+), 177 deletions(-) delete mode 100644 src/utils/KYCVerifier.sol diff --git a/src/libraries/ABErrors.sol b/src/libraries/ABErrors.sol index fa4356a..f32b94f 100644 --- a/src/libraries/ABErrors.sol +++ b/src/libraries/ABErrors.sol @@ -71,4 +71,7 @@ library ABErrors { /// @dev Error returned if supertoken is unable to create a new index error SUPERTOKEN_INDEX_ERROR(); + + /// @dev Error returned when a non-KYC user attempt an operation that requires KYC + error NO_KYC(); } diff --git a/src/token/ERC721/ERC721ABOE.sol b/src/token/ERC721/ERC721ABOE.sol index c7aa87b..e28c521 100644 --- a/src/token/ERC721/ERC721ABOE.sol +++ b/src/token/ERC721/ERC721ABOE.sol @@ -84,8 +84,17 @@ contract ERC721ABOE is ERC721AB { * @param _phaseId current minting phase (must be started) * @param _quantity quantity of tokens requested (must be less than max mint per phase) * @param _signature signature to verify allowlist status + * @param _signature signature to verify user's KYC status */ - function mint(address _to, uint256 _phaseId, uint256 _quantity, bytes calldata _signature) external payable { + function mint( + address _to, + uint256 _phaseId, + uint256 _quantity, + bytes calldata _signature, + bytes calldata _kycSignature + ) external payable { + if (!abVerifier.verifySignatureKYC(_to, _kycSignature)) revert ABErrors.NO_KYC(); + // Check that the requested minting phase has started if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); diff --git a/src/utils/ABVerifier.sol b/src/utils/ABVerifier.sol index 5d5d1a2..191dc9e 100644 --- a/src/utils/ABVerifier.sol +++ b/src/utils/ABVerifier.sol @@ -57,12 +57,18 @@ contract ABVerifier is IABVerifier, AccessControlUpgradeable { /// @dev Default signer address address public defaultSigner; + /// @dev KYC signer address + address public kycSigner; + /// @dev Mapping storing the signer address for a given collection mapping(address collection => address signer) private signerPerCollection; /// @dev anotherblock Admin Role bytes32 public constant AB_ADMIN_ROLE = keccak256("AB_ADMIN_ROLE"); + /// @dev current Nonce used to invalidate KYC signature + uint256 currentNonce; + /// @dev Storage gap used for future upgrades (30 * 32 bytes) uint256[30] __gap; @@ -103,6 +109,22 @@ contract ABVerifier is IABVerifier, AccessControlUpgradeable { // / /____> Date: Tue, 24 Oct 2023 12:24:06 +0200 Subject: [PATCH 03/74] added fireblocks key to gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 5275fc1..59ee2eb 100644 --- a/.gitignore +++ b/.gitignore @@ -13,6 +13,7 @@ docs/ # Dotenv file .env +fireblocks_secret.key # node modules node_modules From 81e461d09888e41ddbd3cba928beb0c0ea8e6fef Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 24 Oct 2023 12:24:10 +0200 Subject: [PATCH 04/74] cache --- forge-cache/solidity-files-cache.json | 48 +++++++++++++-------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 2309ac2..aee6e9c 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -4494,7 +4494,7 @@ } }, "script/base/deploy-implementations.s.sol": { - "lastModificationDate": 1695887535699, + "lastModificationDate": 1698045674541, "contentHash": "7b91a7e4dd208eed116e3d6df13ec06b", "sourceName": "script/base/deploy-implementations.s.sol", "solcConfig": { @@ -4596,7 +4596,7 @@ } }, "script/base/deploy-platform.s.sol": { - "lastModificationDate": 1695887542037, + "lastModificationDate": 1698045674542, "contentHash": "b249659654ea2b392c4629c74cc3f49e", "sourceName": "script/base/deploy-platform.s.sol", "solcConfig": { @@ -4712,7 +4712,7 @@ } }, "script/base/deploy-royalty.s.sol": { - "lastModificationDate": 1693465366217, + "lastModificationDate": 1695374870138, "contentHash": "8f8077a3a079d877814bee151a073325", "sourceName": "script/base/deploy-royalty.s.sol", "solcConfig": { @@ -4989,7 +4989,7 @@ } }, "script/base-goerli/deploy-implementations.s.sol": { - "lastModificationDate": 1695887525422, + "lastModificationDate": 1698045674541, "contentHash": "05dbd9c58bd38f549b31bb572d64d339", "sourceName": "script/base-goerli/deploy-implementations.s.sol", "solcConfig": { @@ -5091,7 +5091,7 @@ } }, "script/base-goerli/deploy-platform.s.sol": { - "lastModificationDate": 1695887530527, + "lastModificationDate": 1698045674541, "contentHash": "bbc66cfe0dd45bbb847a00b608e770df", "sourceName": "script/base-goerli/deploy-platform.s.sol", "solcConfig": { @@ -5207,7 +5207,7 @@ } }, "script/base-goerli/deploy-royalty.s.sol": { - "lastModificationDate": 1693465366216, + "lastModificationDate": 1695374870138, "contentHash": "8f8077a3a079d877814bee151a073325", "sourceName": "script/base-goerli/deploy-royalty.s.sol", "solcConfig": { @@ -5383,7 +5383,7 @@ } }, "script/op/deploy-platform.s.sol": { - "lastModificationDate": 1695887548109, + "lastModificationDate": 1698045674543, "contentHash": "bd1558a2a1b08abdadcab46e1dc68d55", "sourceName": "script/op/deploy-platform.s.sol", "solcConfig": { @@ -5499,7 +5499,7 @@ } }, "script/op/deploy-royalty.s.sol": { - "lastModificationDate": 1693465366217, + "lastModificationDate": 1695374870139, "contentHash": "bb2815d1b7297d11c82eee3952d59434", "sourceName": "script/op/deploy-royalty.s.sol", "solcConfig": { @@ -5721,8 +5721,8 @@ } }, "src/libraries/ABErrors.sol": { - "lastModificationDate": 1693465366218, - "contentHash": "6182110616230ba2872975119c9c13ff", + "lastModificationDate": 1698047830722, + "contentHash": "d2d47a7a832acd26d4173a5589e3af59", "sourceName": "src/libraries/ABErrors.sol", "solcConfig": { "settings": { @@ -6090,8 +6090,8 @@ } }, "src/token/ERC721/ERC721ABOE.sol": { - "lastModificationDate": 1696322758850, - "contentHash": "f31648078435acf839a046f667fd03c2", + "lastModificationDate": 1698047855465, + "contentHash": "38ff543815523e045dd3c1f0013feafd", "sourceName": "src/token/ERC721/ERC721ABOE.sol", "solcConfig": { "settings": { @@ -6206,8 +6206,8 @@ } }, "src/utils/ABVerifier.sol": { - "lastModificationDate": 1693465366219, - "contentHash": "65412e9bc6f0764bc78b283d2e1af36c", + "lastModificationDate": 1698046437531, + "contentHash": "4d08d742c574856408bc4714443bce67", "sourceName": "src/utils/ABVerifier.sol", "solcConfig": { "settings": { @@ -6303,8 +6303,8 @@ } }, "src/utils/IABVerifier.sol": { - "lastModificationDate": 1693465366219, - "contentHash": "4fbc1efff48937c20859fb673ba4ff0a", + "lastModificationDate": 1698047872158, + "contentHash": "fd6c89ab4678e9b71919fa3b17964721", "sourceName": "src/utils/IABVerifier.sol", "solcConfig": { "settings": { @@ -6808,7 +6808,7 @@ } }, "test/factory/AnotherCloneFactory.t.sol": { - "lastModificationDate": 1695887552259, + "lastModificationDate": 1698045674547, "contentHash": "28aa74940b4b4cac784b2cc9b9a6d370", "sourceName": "test/factory/AnotherCloneFactory.t.sol", "solcConfig": { @@ -6930,7 +6930,7 @@ } }, "test/royalty/ABRoyalty.t.sol": { - "lastModificationDate": 1695887559758, + "lastModificationDate": 1698045674547, "contentHash": "1709c4b58e65fec2eb5d4f2a98d2dab4", "sourceName": "test/royalty/ABRoyalty.t.sol", "solcConfig": { @@ -7068,7 +7068,7 @@ } }, "test/token/ERC1155/ERC1155AB.t.sol": { - "lastModificationDate": 1695887569562, + "lastModificationDate": 1698045674548, "contentHash": "7e601132d94c61b0b8aea76a591768ba", "sourceName": "test/token/ERC1155/ERC1155AB.t.sol", "solcConfig": { @@ -7214,7 +7214,7 @@ } }, "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1695887446720, + "lastModificationDate": 1698045674548, "contentHash": "c3871a4701ce436512f1844c328b512f", "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", "solcConfig": { @@ -7355,8 +7355,8 @@ } }, "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1696324340850, - "contentHash": "a7b541a46d9274042a34a4f4a02dbbde", + "lastModificationDate": 1698132800231, + "contentHash": "102342f043e9ae1d6c8e5d4453f1da73", "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", "solcConfig": { "settings": { @@ -7496,7 +7496,7 @@ } }, "test/utils/ABDataRegistry.t.sol": { - "lastModificationDate": 1695306753046, + "lastModificationDate": 1698045674549, "contentHash": "c5537f68bf6c3c9c871bbde7e9d6c952", "sourceName": "test/utils/ABDataRegistry.t.sol", "solcConfig": { @@ -7613,7 +7613,7 @@ } }, "test/utils/ABVerifier.t.sol": { - "lastModificationDate": 1695290530551, + "lastModificationDate": 1698045674549, "contentHash": "9c9577365435fdbc47bbf215a8914342", "sourceName": "test/utils/ABVerifier.t.sol", "solcConfig": { From 9a7b2c34b1e4d89525b73f3a33ea88a7f3119605 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 24 Oct 2023 12:24:19 +0200 Subject: [PATCH 05/74] deploy scripts for fireblocks --- .../fireblocks/create-publisher.s.sol | 21 ++++ .../fireblocks/deploy-ABSuperToken.s.sol | 22 ++++ .../fireblocks/deploy-platform.s.sol | 112 ++++++++++++++++++ .../fireblocks/deploy-royalty.s.sol | 34 ++++++ 4 files changed, 189 insertions(+) create mode 100644 script/base-goerli/fireblocks/create-publisher.s.sol create mode 100644 script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol create mode 100644 script/base-goerli/fireblocks/deploy-platform.s.sol create mode 100644 script/base-goerli/fireblocks/deploy-royalty.s.sol diff --git a/script/base-goerli/fireblocks/create-publisher.s.sol b/script/base-goerli/fireblocks/create-publisher.s.sol new file mode 100644 index 0000000..7311d79 --- /dev/null +++ b/script/base-goerli/fireblocks/create-publisher.s.sol @@ -0,0 +1,21 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +import "forge-std/Script.sol"; + +import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; + +contract CreatePublisher is Script { + function run() external { + // Account to deploy from + uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY"); + + vm.startBroadcast(deployerPrivateKey); + + AnotherCloneFactory anotherCloneFactory = AnotherCloneFactory(0x3d92216eBe9Ce3D5FdCcF74990602C9D1D9D1B77); + + anotherCloneFactory.createPublisherProfile(vm.addr(deployerPrivateKey), 9000); + + vm.stopBroadcast(); + } +} diff --git a/script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol b/script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol new file mode 100644 index 0000000..b9b4044 --- /dev/null +++ b/script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.18; + +import {Script} from "forge-std/Script.sol"; +import {ABSuperToken} from "test/_mocks/ABSuperToken.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; + +contract DeployMockSuperToken is Script { + address public constant SF_HOST_BASE_GOERLI = 0x9D469e8515F0cD12E30699B18059Ac8ca3324110; + + function run() external { + vm.startBroadcast(); + + ABSuperToken abSuperToken = new ABSuperToken(SF_HOST_BASE_GOERLI); + + abSuperToken.initialize(IERC20(address(0)), 18, "anotherblock USDx", "abUSDx"); + + abSuperToken.mint(0xD71256eC24925873cE9E9F085f89864Ca05970bD, 1000e18); + + vm.stopBroadcast(); + } +} diff --git a/script/base-goerli/fireblocks/deploy-platform.s.sol b/script/base-goerli/fireblocks/deploy-platform.s.sol new file mode 100644 index 0000000..8468835 --- /dev/null +++ b/script/base-goerli/fireblocks/deploy-platform.s.sol @@ -0,0 +1,112 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +/* +fireblocks-json-rpc --http -- \ +forge script script/base-goerli/fireblocks/deploy-platform.s.sol:DeployPlatform --sender 0xed1a447270A92D23B716a1CF52B1f9C358f447Ee --broadcast --unlocked --verify --sig "run(bool)" false --rpc-url {} +*/ + +import "forge-std/Script.sol"; + +import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; +import {ProxyAdmin} from "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol"; + +import {ABDataRegistry} from "src/utils/ABDataRegistry.sol"; +import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; +import {ABVerifier} from "src/utils/ABVerifier.sol"; +import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; +import {ERC1155AB} from "src/token/ERC1155/ERC1155AB.sol"; +import {ERC721ABLE} from "src/token/ERC721/ERC721ABLE.sol"; + +contract DeployPlatform is Script { + uint256 public constant DROP_ID_OFFSET = 20_000; + + string public constant VERIFIER_PATH = "deployment/84531/ABVerifier/address"; + string public constant DATA_REGISTRY_PATH = "deployment/84531/ABDataRegistry/address"; + string public constant FACTORY_PATH = "deployment/84531/AnotherCloneFactory/address"; + string public constant PROXY_ADMIN_PATH = "deployment/84531/ProxyAdmin/address"; + + ERC721ABLE public erc721Impl; + ERC1155AB public erc1155Impl; + ABRoyalty public royaltyImpl; + ProxyAdmin public proxyAdmin; + + // address public constant BASE_GOERLI_MULTISIG = 0x34447e8b81e657F7d8fF80070c24b1320AcF4013; + + TransparentUpgradeableProxy public abVerifierProxy; + TransparentUpgradeableProxy public abDataRegistryProxy; + TransparentUpgradeableProxy public anotherCloneFactoryProxy; + + function run(bool isDryRun) external { + // Start broadcasting transactions + vm.startBroadcast(); + + // Deploy Implementation Contracts + erc721Impl = new ERC721ABLE(); + erc1155Impl = new ERC1155AB(); + royaltyImpl = new ABRoyalty(); + + // Check if a Proxy Admin has already been deployed + try vm.readFile(PROXY_ADMIN_PATH) returns (string memory proxyAdminAddr) { + proxyAdmin = ProxyAdmin(vm.parseAddress(proxyAdminAddr)); + } catch { + proxyAdmin = new ProxyAdmin(); + if (!isDryRun) { + _writeAddressToFile(address(proxyAdmin), PROXY_ADMIN_PATH); + } + } + + // Deploy ABVerifier + abVerifierProxy = new TransparentUpgradeableProxy( + address(new ABVerifier()), + address(proxyAdmin), + abi.encodeWithSelector(ABVerifier.initialize.selector, 0xD71256eC24925873cE9E9F085f89864Ca05970bD) + ); + if (!isDryRun) { + _writeAddressToFile(address(abVerifierProxy), VERIFIER_PATH); + } + + // Deploy ABDataRegistry + abDataRegistryProxy = new TransparentUpgradeableProxy( + address(new ABDataRegistry()), + address(proxyAdmin), + abi.encodeWithSelector(ABDataRegistry.initialize.selector, DROP_ID_OFFSET, 0xD71256eC24925873cE9E9F085f89864Ca05970bD) + ); + if (!isDryRun) { + _writeAddressToFile(address(abDataRegistryProxy), DATA_REGISTRY_PATH); + } + + // Deploy AnotherCloneFactory + anotherCloneFactoryProxy = new TransparentUpgradeableProxy( + address(new AnotherCloneFactory()), + address(proxyAdmin), + abi.encodeWithSelector(AnotherCloneFactory.initialize.selector, + address(abDataRegistryProxy), + address(abVerifierProxy), + address(erc721Impl), + address(erc1155Impl), + address(royaltyImpl) + ) + ); + if (!isDryRun) { + _writeAddressToFile(address(anotherCloneFactoryProxy), FACTORY_PATH); + } + // Grant FACTORY_ROLE to AnotherCloneFactory contract + ABDataRegistry(address(abDataRegistryProxy)).grantRole( + keccak256("FACTORY_ROLE"), address(anotherCloneFactoryProxy) + ); + + // Grant AB_ADMIN_ROLE to the deployer address + AnotherCloneFactory(address(anotherCloneFactoryProxy)).grantRole( + keccak256("AB_ADMIN_ROLE"), 0xD71256eC24925873cE9E9F085f89864Ca05970bD + ); + + ABVerifier(address(abVerifierProxy)).setKycSigner(0xD71256eC24925873cE9E9F085f89864Ca05970bD); + + vm.stopBroadcast(); + } + + function _writeAddressToFile(address _addr, string memory _path) internal { + vm.writeFile(_path, vm.toString(_addr)); + } +} diff --git a/script/base-goerli/fireblocks/deploy-royalty.s.sol b/script/base-goerli/fireblocks/deploy-royalty.s.sol new file mode 100644 index 0000000..358cced --- /dev/null +++ b/script/base-goerli/fireblocks/deploy-royalty.s.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +import "forge-std/Script.sol"; + +import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; + +import {ABDataRegistry} from "src/utils/ABDataRegistry.sol"; +import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; + +contract DeployRoyalty is Script { + string constant PROXY_ADMIN_PATH = "deployment/84531/ProxyAdmin/address"; + string constant DATAREGISTRY_PATH = "deployment/84531/ABDataRegistry/address"; + + function run(address _publisher) external { + // Account to deploy from + uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY"); + + // Read deployed address + address proxyAdmin = vm.parseAddress(vm.readFile(PROXY_ADMIN_PATH)); + address abDataRegistry = vm.parseAddress(vm.readFile(DATAREGISTRY_PATH)); + + vm.startBroadcast(deployerPrivateKey); + + // Deploy Implementation Contracts + new TransparentUpgradeableProxy( + address(new ABRoyalty()), + proxyAdmin, + abi.encodeWithSelector(ABRoyalty.initialize.selector, _publisher, abDataRegistry) + ); + + vm.stopBroadcast(); + } +} From d070f024f162c765979ac15e1c8ef45a8ab20ffd Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Fri, 27 Oct 2023 11:45:09 +0200 Subject: [PATCH 06/74] fireblock scripts --- .../goerli/fireblocks/create-publisher.s.sol | 21 ++++ .../fireblocks/deploy-ABSuperToken.s.sol | 22 ++++ .../goerli/fireblocks/deploy-platform.s.sol | 110 ++++++++++++++++++ script/goerli/fireblocks/deploy-royalty.s.sol | 34 ++++++ 4 files changed, 187 insertions(+) create mode 100644 script/goerli/fireblocks/create-publisher.s.sol create mode 100644 script/goerli/fireblocks/deploy-ABSuperToken.s.sol create mode 100644 script/goerli/fireblocks/deploy-platform.s.sol create mode 100644 script/goerli/fireblocks/deploy-royalty.s.sol diff --git a/script/goerli/fireblocks/create-publisher.s.sol b/script/goerli/fireblocks/create-publisher.s.sol new file mode 100644 index 0000000..7311d79 --- /dev/null +++ b/script/goerli/fireblocks/create-publisher.s.sol @@ -0,0 +1,21 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +import "forge-std/Script.sol"; + +import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; + +contract CreatePublisher is Script { + function run() external { + // Account to deploy from + uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY"); + + vm.startBroadcast(deployerPrivateKey); + + AnotherCloneFactory anotherCloneFactory = AnotherCloneFactory(0x3d92216eBe9Ce3D5FdCcF74990602C9D1D9D1B77); + + anotherCloneFactory.createPublisherProfile(vm.addr(deployerPrivateKey), 9000); + + vm.stopBroadcast(); + } +} diff --git a/script/goerli/fireblocks/deploy-ABSuperToken.s.sol b/script/goerli/fireblocks/deploy-ABSuperToken.s.sol new file mode 100644 index 0000000..b9b4044 --- /dev/null +++ b/script/goerli/fireblocks/deploy-ABSuperToken.s.sol @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.18; + +import {Script} from "forge-std/Script.sol"; +import {ABSuperToken} from "test/_mocks/ABSuperToken.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; + +contract DeployMockSuperToken is Script { + address public constant SF_HOST_BASE_GOERLI = 0x9D469e8515F0cD12E30699B18059Ac8ca3324110; + + function run() external { + vm.startBroadcast(); + + ABSuperToken abSuperToken = new ABSuperToken(SF_HOST_BASE_GOERLI); + + abSuperToken.initialize(IERC20(address(0)), 18, "anotherblock USDx", "abUSDx"); + + abSuperToken.mint(0xD71256eC24925873cE9E9F085f89864Ca05970bD, 1000e18); + + vm.stopBroadcast(); + } +} diff --git a/script/goerli/fireblocks/deploy-platform.s.sol b/script/goerli/fireblocks/deploy-platform.s.sol new file mode 100644 index 0000000..8ff0dd4 --- /dev/null +++ b/script/goerli/fireblocks/deploy-platform.s.sol @@ -0,0 +1,110 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +/* +fireblocks-json-rpc --http -- \ +forge script script/base-goerli/fireblocks/deploy-platform.s.sol:DeployPlatform --sender 0xed1a447270A92D23B716a1CF52B1f9C358f447Ee --broadcast --unlocked --verify --sig "run(bool)" false --rpc-url {} +*/ + +import "forge-std/Script.sol"; + +import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; +import {ProxyAdmin} from "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol"; + +import {ABDataRegistry} from "src/utils/ABDataRegistry.sol"; +import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; +import {ABVerifier} from "src/utils/ABVerifier.sol"; +import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; +import {ERC1155AB} from "src/token/ERC1155/ERC1155AB.sol"; +import {ERC721ABLE} from "src/token/ERC721/ERC721ABLE.sol"; + +contract DeployPlatform is Script { + uint256 public constant DROP_ID_OFFSET = 30_000; + + string public constant VERIFIER_PATH = "deployment/5/ABVerifier/address"; + string public constant DATA_REGISTRY_PATH = "deployment/5/ABDataRegistry/address"; + string public constant FACTORY_PATH = "deployment/5/AnotherCloneFactory/address"; + string public constant PROXY_ADMIN_PATH = "deployment/5/ProxyAdmin/address"; + + ERC721ABLE public erc721Impl; + ERC1155AB public erc1155Impl; + ABRoyalty public royaltyImpl; + ProxyAdmin public proxyAdmin; + + TransparentUpgradeableProxy public abVerifierProxy; + TransparentUpgradeableProxy public abDataRegistryProxy; + TransparentUpgradeableProxy public anotherCloneFactoryProxy; + + function run(bool isDryRun) external { + // Start broadcasting transactions + vm.startBroadcast(); + + // Deploy Implementation Contracts + erc721Impl = new ERC721ABLE(); + erc1155Impl = new ERC1155AB(); + royaltyImpl = new ABRoyalty(); + + // Check if a Proxy Admin has already been deployed + try vm.readFile(PROXY_ADMIN_PATH) returns (string memory proxyAdminAddr) { + proxyAdmin = ProxyAdmin(vm.parseAddress(proxyAdminAddr)); + } catch { + proxyAdmin = new ProxyAdmin(); + if (!isDryRun) { + _writeAddressToFile(address(proxyAdmin), PROXY_ADMIN_PATH); + } + } + + // Deploy ABVerifier + abVerifierProxy = new TransparentUpgradeableProxy( + address(new ABVerifier()), + address(proxyAdmin), + abi.encodeWithSelector(ABVerifier.initialize.selector, 0xD71256eC24925873cE9E9F085f89864Ca05970bD) + ); + if (!isDryRun) { + _writeAddressToFile(address(abVerifierProxy), VERIFIER_PATH); + } + + // Deploy ABDataRegistry + abDataRegistryProxy = new TransparentUpgradeableProxy( + address(new ABDataRegistry()), + address(proxyAdmin), + abi.encodeWithSelector(ABDataRegistry.initialize.selector, DROP_ID_OFFSET, 0xD71256eC24925873cE9E9F085f89864Ca05970bD) + ); + if (!isDryRun) { + _writeAddressToFile(address(abDataRegistryProxy), DATA_REGISTRY_PATH); + } + + // Deploy AnotherCloneFactory + anotherCloneFactoryProxy = new TransparentUpgradeableProxy( + address(new AnotherCloneFactory()), + address(proxyAdmin), + abi.encodeWithSelector(AnotherCloneFactory.initialize.selector, + address(abDataRegistryProxy), + address(abVerifierProxy), + address(erc721Impl), + address(erc1155Impl), + address(royaltyImpl) + ) + ); + if (!isDryRun) { + _writeAddressToFile(address(anotherCloneFactoryProxy), FACTORY_PATH); + } + // Grant FACTORY_ROLE to AnotherCloneFactory contract + ABDataRegistry(address(abDataRegistryProxy)).grantRole( + keccak256("FACTORY_ROLE"), address(anotherCloneFactoryProxy) + ); + + // Grant AB_ADMIN_ROLE to the deployer address + AnotherCloneFactory(address(anotherCloneFactoryProxy)).grantRole( + keccak256("AB_ADMIN_ROLE"), 0xD71256eC24925873cE9E9F085f89864Ca05970bD + ); + + ABVerifier(address(abVerifierProxy)).setKycSigner(0xD71256eC24925873cE9E9F085f89864Ca05970bD); + + vm.stopBroadcast(); + } + + function _writeAddressToFile(address _addr, string memory _path) internal { + vm.writeFile(_path, vm.toString(_addr)); + } +} diff --git a/script/goerli/fireblocks/deploy-royalty.s.sol b/script/goerli/fireblocks/deploy-royalty.s.sol new file mode 100644 index 0000000..358cced --- /dev/null +++ b/script/goerli/fireblocks/deploy-royalty.s.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +import "forge-std/Script.sol"; + +import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; + +import {ABDataRegistry} from "src/utils/ABDataRegistry.sol"; +import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; + +contract DeployRoyalty is Script { + string constant PROXY_ADMIN_PATH = "deployment/84531/ProxyAdmin/address"; + string constant DATAREGISTRY_PATH = "deployment/84531/ABDataRegistry/address"; + + function run(address _publisher) external { + // Account to deploy from + uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY"); + + // Read deployed address + address proxyAdmin = vm.parseAddress(vm.readFile(PROXY_ADMIN_PATH)); + address abDataRegistry = vm.parseAddress(vm.readFile(DATAREGISTRY_PATH)); + + vm.startBroadcast(deployerPrivateKey); + + // Deploy Implementation Contracts + new TransparentUpgradeableProxy( + address(new ABRoyalty()), + proxyAdmin, + abi.encodeWithSelector(ABRoyalty.initialize.selector, _publisher, abDataRegistry) + ); + + vm.stopBroadcast(); + } +} From 641ca7992fdd2167f9f5528c35e0c083fae35860 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Fri, 27 Oct 2023 11:45:25 +0200 Subject: [PATCH 07/74] fireblocks deployments --- .../5/run-1698150793.json | 268 ++++++ .../5/run-1698150824.json | 588 +++++++++++++ .../5/run-1698150988.json | 288 +++++++ .../5/run-1698150989.json | 519 ++++++++++++ .../deploy-platform.s.sol/5/run-latest.json | 519 ++++++++++++ deployment/5/ABDataRegistry/address | 1 + deployment/5/ABVerifier/address | 1 + deployment/5/AnotherCloneFactory/address | 1 + deployment/5/ProxyAdmin/address | 1 + .../5/run-1698150793.json | 40 + .../5/run-1698150824.json | 40 + .../5/run-1698150988.json | 43 + .../5/run-1698150989.json | 43 + .../deploy-platform.s.sol/5/run-latest.json | 43 + forge-cache/solidity-files-cache.json | 786 ++++++++++++++++++ 15 files changed, 3181 insertions(+) create mode 100644 broadcast/deploy-platform.s.sol/5/run-1698150793.json create mode 100644 broadcast/deploy-platform.s.sol/5/run-1698150824.json create mode 100644 broadcast/deploy-platform.s.sol/5/run-1698150988.json create mode 100644 broadcast/deploy-platform.s.sol/5/run-1698150989.json create mode 100644 broadcast/deploy-platform.s.sol/5/run-latest.json create mode 100644 deployment/5/ABDataRegistry/address create mode 100644 deployment/5/ABVerifier/address create mode 100644 deployment/5/AnotherCloneFactory/address create mode 100644 deployment/5/ProxyAdmin/address create mode 100644 forge-cache/deploy-platform.s.sol/5/run-1698150793.json create mode 100644 forge-cache/deploy-platform.s.sol/5/run-1698150824.json create mode 100644 forge-cache/deploy-platform.s.sol/5/run-1698150988.json create mode 100644 forge-cache/deploy-platform.s.sol/5/run-1698150989.json create mode 100644 forge-cache/deploy-platform.s.sol/5/run-latest.json diff --git a/broadcast/deploy-platform.s.sol/5/run-1698150793.json b/broadcast/deploy-platform.s.sol/5/run-1698150793.json new file mode 100644 index 0000000..f62d076 --- /dev/null +++ b/broadcast/deploy-platform.s.sol/5/run-1698150793.json @@ -0,0 +1,268 @@ +{ + "transactions": [ + { + "hash": "0x93eb1e534b0610b9bf62bce9c1ff762f01b08affc26d94baac78ce72b10b6a17", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0xC5e5baF5D09f92edebcC5fA43CF79aa8E53FD8f3", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x3251ab", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612c7380620000f46000396000f3fe60806040526004361061020f5760003560e01c806370a0823111610118578063a1db9782116100a0578063d5abeb011161006f578063d5abeb0114610622578063de7ecf8714610638578063e985e9c51461064e578063f2fde38b1461066e578063fe325e961461068e57600080fd5b8063a1db9782146105af578063a22cb465146105cf578063b88d4fde146105ef578063c87b56dd1461060257600080fd5b806384a0c766116100e757806384a0c7661461051c5780638c72c54e1461053c5780638da5cb5b1461055c5780639182ba971461057a57806395d89b411461059a57600080fd5b806370a08231146104ad578063715018a6146104cd578063731133e9146104e2578063754b377c146104f557600080fd5b806342842e0e1161019b57806365e8e4f41161016a57806365e8e4f4146103f557806366748e98146104155780636cc82b841461044d5780636dbdaae61461046d5780636f8b44b01461048d57600080fd5b806342842e0e1461036e5780634b1022621461038157806355f804b3146103b55780636352211e146103d557600080fd5b806318160ddd116101e257806318160ddd146102b857806323b872dd146102db5780632a778c9b146102ee5780632e37eef6146103045780634128541c1461034e57600080fd5b806301ffc9a71461021457806306fdde0314610249578063081812fc1461026b578063095ea7b3146102a3575b600080fd5b34801561022057600080fd5b5061023461022f3660046121e8565b6106a3565b60405190151581526020015b60405180910390f35b34801561025557600080fd5b5061025e6106b4565b6040516102409190612255565b34801561027757600080fd5b5061028b610286366004612268565b61074f565b6040516001600160a01b039091168152602001610240565b6102b66102b1366004612296565b61079c565b005b3480156102c457600080fd5b506102cd6107ac565b604051908152602001610240565b6102b66102e93660046122c2565b6107cc565b3480156102fa57600080fd5b506102cd60685481565b34801561031057600080fd5b5061032461031f366004612268565b6109d0565b6040805195865260208601949094529284019190915260608301521515608082015260a001610240565b34801561035a57600080fd5b5060655461028b906001600160a01b031681565b6102b661037c3660046122c2565b610a14565b34801561038d57600080fd5b506102cd7f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156103c157600080fd5b506102b66103d036600461234b565b610a34565b3480156103e157600080fd5b5061028b6103f0366004612268565b610a49565b34801561040157600080fd5b506102b6610410366004612417565b610a54565b34801561042157600080fd5b506102cd610430366004612296565b606c60209081526000928352604080842090915290825290205481565b34801561045957600080fd5b5060665461028b906001600160a01b031681565b34801561047957600080fd5b506102b6610488366004612268565b610cd9565b34801561049957600080fd5b506102b66104a8366004612268565b610ce6565b3480156104b957600080fd5b506102cd6104c836600461249f565b610d1b565b3480156104d957600080fd5b506102b6610d83565b6102b66104f03660046124bc565b610d97565b34801561050157600080fd5b5061050a600181565b60405160ff9091168152602001610240565b34801561052857600080fd5b506102b6610537366004612525565b610fbe565b34801561054857600080fd5b5060675461028b906001600160a01b031681565b34801561056857600080fd5b506033546001600160a01b031661028b565b34801561058657600080fd5b506102b66105953660046125aa565b611003565b3480156105a657600080fd5b5061025e6111ca565b3480156105bb57600080fd5b506102b66105ca366004612296565b611206565b3480156105db57600080fd5b506102b66105ea36600461262c565b61127f565b6102b66105fd366004612665565b6112fc565b34801561060e57600080fd5b5061025e61061d366004612268565b611346565b34801561062e57600080fd5b506102cd606d5481565b34801561064457600080fd5b506102cd60695481565b34801561065a57600080fd5b506102346106693660046126b8565b6114a1565b34801561067a57600080fd5b506102b661068936600461249f565b6114de565b34801561069a57600080fd5b506102b6611557565b60006106ae82611729565b92915050565b60606106be611777565b60020180546106cc906126e6565b80601f01602080910402602001604051908101604052809291908181526020018280546106f8906126e6565b80156107455780601f1061071a57610100808354040283529160200191610745565b820191906000526020600020905b81548152906001019060200180831161072857829003601f168201915b5050505050905090565b600061075a8261179b565b610777576040516333d1c03960e21b815260040160405180910390fd5b61077f611777565b60009283526006016020525060409020546001600160a01b031690565b6107a8828260016117e4565b5050565b600060016107b8611777565b600101546107c4611777565b540303919050565b60006107d782611899565b9050836001600160a01b0316816001600160a01b03161461080a5760405162a1148160e81b815260040160405180910390fd5b60008061081684611946565b9150915061083b81876108263390565b6001600160a01b039081169116811491141790565b6108665761084986336114a1565b61086657604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b03851661088d57604051633a954ecd60e21b815260040160405180910390fd5b61089a868686600161196e565b80156108a557600082555b6108ad611777565b6001600160a01b03871660009081526005919091016020526040902080546000190190556108d9611777565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610910611777565b60008681526004919091016020526040812091909155600160e11b84169003610986576001840161093f611777565b60008281526004919091016020526040812054900361098457610960611777565b5481146109845783610970611777565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45b505050505050565b606b81815481106109e057600080fd5b6000918252602090912060059091020180546001820154600283015460038401546004909401549294509092909160ff1685565b610a2f838383604051806020016040528060008152506112fc565b505050565b610a3c6119ff565b606a610a2f828483612760565b60006106ae82611899565b600080516020612c1e83398151915254610100900460ff16610a8957600080516020612c1e8339815191525460ff1615610a8d565b303b155b610b045760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b600080516020612c1e83398151915254610100900460ff16158015610b4057600080516020612c1e833981519152805461ffff19166101011790555b600054610100900460ff1615808015610b605750600054600160ff909116105b80610b7a5750303b158015610b7a575060005460ff166001145b610bdd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610afb565b6000805460ff191660011790558015610c00576000805461ff0019166101001790555b610c198360405180602001604052806000815250611a59565b610c21611a97565b610c2a86611ac6565b6000606855606580546001600160a01b038088166001600160a01b0319928316179092556066805487841690831617905560678054928916929091169190911790558015610cb2576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610cd257600080516020612c1e833981519152805461ff00191690555b5050505050565b610ce16119ff565b606955565b610cee6119ff565b610cf6611b18565b811015610d1657604051632627b42d60e11b815260040160405180910390fd5b606d55565b60006001600160a01b038216610d44576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03610d54611777565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b610d8b6119ff565b610d956000611ac6565b565b610da084611b2b565b610dbd576040516332f7a9d760e21b815260040160405180910390fd5b6000606b8581548110610dd257610dd261281f565b60009182526020918290206040805160a0810182526005909302909101805483526001810154938301939093526002830154908201526003820154606082015260049091015460ff1615156080820152606d5490915084610e31611b18565b610e3b919061284b565b1115610e5a576040516322eb5e9560e21b815260040160405180910390fd5b8060800151610ef9576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490610e9b90899030908a908990899060040161285e565b602060405180830381865afa158015610eb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edc91906128b2565b610ef9576040516352c973a760e01b815260040160405180910390fd5b60608101516001600160a01b0387166000908152606c60209081526040808320898452909152902054610f2d90869061284b565b1115610f4c57604051631d66b65960e11b815260040160405180910390fd5b838160400151610f5c91906128cf565b3414610f7b576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0386166000908152606c6020908152604080832088845290915281208054869290610fae90849061284b565b909155506109c890508685611bd2565b610fc66119ff565b606d87905586851115610fec57604051632627b42d60e11b815260040160405180910390fd5b610ffa868686868686611d1a565b50505050505050565b61100b6119ff565b606b541561101f5761101f606b600061217d565b600081815b818110156111905760008585838181106110405761104061281f565b905060a0020180360381019061105691906128e6565b9050838160000151108061106e575060208101518151115b1561108c57604051632627b42d60e11b815260040160405180910390fd5b606b805460018101825560009190915281517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b4600590920291820181905560208301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b583015560408301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b683015560608301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b78301556080909201517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b8909101805460ff191691151591909117905592506111898161295b565b9050611024565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6060606854600014611203576111e1606854611e32565b6040516020016111f19190612974565b60405160208183030381529060405290505b90565b61120e6119ff565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af115801561125b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a2f91906128b2565b80611288611777565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113078484846107cc565b6001600160a01b0383163b156113405761132384848484611ec4565b611340576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b60606113518261179b565b61136e57604051632627b42d60e11b815260040160405180910390fd5b6000611378611faf565b9050805160000361139a5760405180602001604052806000815250915061149b565b60408051600180825281830190925260009160208201818036833701905050905081600183516113ca919061299e565b815181106113da576113da61281f565b602001015160f81c60f81b816000815181106113f8576113f861281f565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161144891906129b1565b6040516020818303038152906040528051906020012003611494578261146d86611fbe565b60405160200161147e9291906129cd565b6040516020818303038152906040529350611498565b8293505b50505b50919050565b60006114ab611777565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6114e66119ff565b6001600160a01b03811661154b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610afb565b61155481611ac6565b50565b61155f6119ff565b60655460675460685460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156115b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115dd91906129fc565b90925090506001600160a01b03821661160957604051632627b42d60e11b815260040160405180910390fd5b47600061271061161984846128cf565b6116239190612a2a565b90506000611631828461299e565b905080156116af576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611686576040519150601f19603f3d011682016040523d82523d6000602084013e61168b565b606091505b50509050806116ad57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610cd2576067546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611702576040519150601f19603f3d011682016040523d82523d6000602084013e611707565b606091505b50509050806109c857604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b03198316148061175a57506380ac58cd60e01b6001600160e01b03198316145b806106ae5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b6000816001111580156117b557506117b1611777565b5482105b80156106ae5750600160e01b6117c9611777565b60008481526004919091016020526040902054161592915050565b60006117ef83610a49565b9050811561182e57336001600160a01b0382161461182e5761181181336114a1565b61182e576040516367d9dca160e11b815260040160405180910390fd5b83611837611777565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b60008160011161192d576118ab611777565b600083815260049190910160205260408120549150600160e01b8216900361192d5780600003611928576118dd611777565b5482106118fd57604051636f96cda160e11b815260040160405180910390fd5b611905611777565b6000199092016000818152600493909301602052604090922054905080156118fd575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611953611777565b60009485526006016020525050604090912080549092909150565b6069541561134057606554606754606854604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156119e157600080fd5b505af11580156119f5573d6000803e3d6000fd5b5050505050505050565b6033546001600160a01b03163314610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610afb565b600080516020612c1e83398151915254610100900460ff16611a8d5760405162461bcd60e51b8152600401610afb90612a4c565b6107a88282612002565b600054610100900460ff16611abe5760405162461bcd60e51b8152600401610afb90612aa0565b610d95612075565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006001611b24611777565b5403919050565b606b546000908210611b5057604051632627b42d60e11b815260040160405180910390fd5b6000606b8381548110611b6557611b6561281f565b60009182526020918290206040805160a08101825260059093029091018054808452600182015494840194909452600281015491830191909152600381015460608301526004015460ff161515608082015291504210801590611bcb5750428160200151115b9392505050565b6000611bdc611777565b5490506000829003611c015760405163b562e8dd60e01b815260040160405180910390fd5b611c0e600084838561196e565b680100000000000000018202611c22611777565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717611c5d611777565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b818114611ce757808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101611caf565b5081600003611d0857604051622e076360e81b815260040160405180910390fd5b80611d11611777565b5550610a2f9050565b60685415611d3b576040516302d1671b60e41b815260040160405180910390fd5b85158015611d5157506001600160a01b03831615155b80611d6d57506001600160a01b038316158015611d6d57508515155b15611d8b57604051632627b42d60e11b815260040160405180910390fd5b60655460675460405163ae98d85760e01b81526001600160a01b03918216600482015285821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015611de8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0c9190612aeb565b6068556069869055606a611e21828483612760565b5084156109c8576109c88486611bd2565b60606000611e3f836120a5565b60010190506000816001600160401b03811115611e5e57611e5e61238c565b6040519080825280601f01601f191660200182016040528015611e88576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611e9257509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290611ef9903390899088908890600401612b04565b6020604051808303816000875af1925050508015611f34575060408051601f3d908101601f19168201909252611f3191810190612b41565b60015b611f92573d808015611f62576040519150601f19603f3d011682016040523d82523d6000602084013e611f67565b606091505b508051600003611f8a576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606a80546106cc906126e6565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a900480611fd85750819003601f19909101908152919050565b600080516020612c1e83398151915254610100900460ff166120365760405162461bcd60e51b8152600401610afb90612a4c565b8161203f611777565b6002019061204d9082612b5e565b5080612057611777565b600301906120659082612b5e565b506001612070611777565b555050565b600054610100900460ff1661209c5760405162461bcd60e51b8152600401610afb90612aa0565b610d9533611ac6565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106120e45772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612110576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061212e57662386f26fc10000830492506010015b6305f5e1008310612146576305f5e100830492506008015b612710831061215a57612710830492506004015b6064831061216c576064830492506002015b600a83106106ae5760010192915050565b508054600082556005029060005260206000209081019061155491905b808211156121ce5760008082556001820181905560028201819055600382015560048101805460ff1916905560050161219a565b5090565b6001600160e01b03198116811461155457600080fd5b6000602082840312156121fa57600080fd5b8135611bcb816121d2565b60005b83811015612220578181015183820152602001612208565b50506000910152565b60008151808452612241816020860160208601612205565b601f01601f19169290920160200192915050565b602081526000611bcb6020830184612229565b60006020828403121561227a57600080fd5b5035919050565b6001600160a01b038116811461155457600080fd5b600080604083850312156122a957600080fd5b82356122b481612281565b946020939093013593505050565b6000806000606084860312156122d757600080fd5b83356122e281612281565b925060208401356122f281612281565b929592945050506040919091013590565b60008083601f84011261231557600080fd5b5081356001600160401b0381111561232c57600080fd5b60208301915083602082850101111561234457600080fd5b9250929050565b6000806020838503121561235e57600080fd5b82356001600160401b0381111561237457600080fd5b61238085828601612303565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b03808411156123bc576123bc61238c565b604051601f8501601f19908116603f011681019082821181831017156123e4576123e461238c565b816040528093508581528686860111156123fd57600080fd5b858560208301376000602087830101525050509392505050565b6000806000806080858703121561242d57600080fd5b843561243881612281565b9350602085013561244881612281565b9250604085013561245881612281565b915060608501356001600160401b0381111561247357600080fd5b8501601f8101871361248457600080fd5b612493878235602084016123a2565b91505092959194509250565b6000602082840312156124b157600080fd5b8135611bcb81612281565b6000806000806000608086880312156124d457600080fd5b85356124df81612281565b9450602086013593506040860135925060608601356001600160401b0381111561250857600080fd5b61251488828901612303565b969995985093965092949392505050565b600080600080600080600060c0888a03121561254057600080fd5b873596506020880135955060408801359450606088013561256081612281565b9350608088013561257081612281565b925060a08801356001600160401b0381111561258b57600080fd5b6125978a828b01612303565b989b979a50959850939692959293505050565b600080602083850312156125bd57600080fd5b82356001600160401b03808211156125d457600080fd5b818501915085601f8301126125e857600080fd5b8135818111156125f757600080fd5b86602060a08302850101111561260c57600080fd5b60209290920196919550909350505050565b801515811461155457600080fd5b6000806040838503121561263f57600080fd5b823561264a81612281565b9150602083013561265a8161261e565b809150509250929050565b6000806000806080858703121561267b57600080fd5b843561268681612281565b9350602085013561269681612281565b92506040850135915060608501356001600160401b0381111561247357600080fd5b600080604083850312156126cb57600080fd5b82356126d681612281565b9150602083013561265a81612281565b600181811c908216806126fa57607f821691505b60208210810361149b57634e487b7160e01b600052602260045260246000fd5b601f821115610a2f57600081815260208120601f850160051c810160208610156127415750805b601f850160051c820191505b818110156109c85782815560010161274d565b6001600160401b038311156127775761277761238c565b61278b8361278583546126e6565b8361271a565b6000601f8411600181146127bf57600085156127a75750838201355b600019600387901b1c1916600186901b178355610cd2565b600083815260209020601f19861690835b828110156127f057868501358255602094850194600190920191016127d0565b508682101561280d5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156106ae576106ae612835565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b6000602082840312156128c457600080fd5b8151611bcb8161261e565b80820281158282048414176106ae576106ae612835565b600060a082840312156128f857600080fd5b60405160a081018181106001600160401b038211171561291a5761291a61238c565b806040525082358152602083013560208201526040830135604082015260608301356060820152608083013561294f8161261e565b60808201529392505050565b60006001820161296d5761296d612835565b5060010190565b6120a160f11b815260008251612991816002850160208701612205565b9190910160020192915050565b818103818111156106ae576106ae612835565b600082516129c3818460208701612205565b9190910192915050565b600083516129df818460208801612205565b8351908301906129f3818360208801612205565b01949350505050565b60008060408385031215612a0f57600080fd5b8251612a1a81612281565b6020939093015192949293505050565b600082612a4757634e487b7160e01b600052601260045260246000fd5b500490565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600060208284031215612afd57600080fd5b5051919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612b3790830184612229565b9695505050505050565b600060208284031215612b5357600080fd5b8151611bcb816121d2565b81516001600160401b03811115612b7757612b7761238c565b612b8b81612b8584546126e6565b8461271a565b602080601f831160018114612bc05760008415612ba85750858301515b600019600386901b1c1916600185901b1785556109c8565b600085815260208120601f198616915b82811015612bef57888601518255948401946001909101908401612bd0565b5085821015612c0d5787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220210ddb125bf4095c0abcbd659a3c60649af2f481592701c6da57632ae48d0ba164736f6c63430008130033", + "nonce": "0x1d", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x4ab8929fb10fe306c89f4c6985b48aa04bc98ddb683c86d0995ab9fe216442bd", + "transactionType": "CREATE", + "contractName": null, + "contractAddress": "0x63C18A5F329a7be8975930E188655534a3ffA045", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x3fd18d", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6138c080620000f46000396000f3fe6080604052600436106101c15760003560e01c806375794a3c116100f7578063c0c53b8b11610095578063f0c62a2f11610064578063f0c62a2f146105bd578063f242432a146105d0578063f2fde38b146105f0578063fe325e961461061057600080fd5b8063c0c53b8b14610521578063ca41ca6414610541578063e985e9c514610554578063ed01bda71461059d57600080fd5b80638da5cb5b116100d15780638da5cb5b146104a3578063a1db9782146104c1578063a22cb465146104e1578063ba0802ae1461050157600080fd5b806375794a3c1461040957806376744f501461041f5780638c72c54e1461048357600080fd5b80633b9ed29e116101645780634e1273f41161013e5780634e1273f4146103805780636cc82b84146103ad578063715018a6146103cd578063754b377c146103e257600080fd5b80633b9ed29e146102d85780633bd651a0146103165780634128541c1461034857600080fd5b80630f0e59ac116101a05780630f0e59ac14610256578063162094c4146102785780632eb2c2d61461029857806337da577c146102b857600080fd5b8062fdd58e146101c657806301ffc9a7146101f95780630e89341c14610229575b600080fd5b3480156101d257600080fd5b506101e66101e1366004612873565b610625565b6040519081526020015b60405180910390f35b34801561020557600080fd5b506102196102143660046128b5565b6106c0565b60405190151581526020016101f0565b34801561023557600080fd5b506102496102443660046128d9565b6106cb565b6040516101f09190612938565b34801561026257600080fd5b50610276610271366004612996565b610770565b005b34801561028457600080fd5b50610276610293366004612a76565b6107c6565b3480156102a457600080fd5b506102766102b3366004612b84565b6107ee565b3480156102c457600080fd5b506102766102d3366004612c31565b61083a565b3480156102e457600080fd5b506101e66102f3366004612c53565b60ce60209081526000938452604080852082529284528284209052825290205481565b34801561032257600080fd5b506103366103313660046128d9565b610889565b6040516101f096959493929190612c88565b34801561035457600080fd5b5060c954610368906001600160a01b031681565b6040516001600160a01b0390911681526020016101f0565b34801561038c57600080fd5b506103a061039b366004612cc5565b61094d565b6040516101f09190612dc2565b3480156103b957600080fd5b5060ca54610368906001600160a01b031681565b3480156103d957600080fd5b50610276610a76565b3480156103ee57600080fd5b506103f7600181565b60405160ff90911681526020016101f0565b34801561041557600080fd5b506101e660cc5481565b34801561042b57600080fd5b5061043f61043a366004612c31565b610a8a565b6040516101f09190600060a0820190508251825260208301516020830152604083015160408301526060830151606083015260808301511515608083015292915050565b34801561048f57600080fd5b5060cb54610368906001600160a01b031681565b3480156104af57600080fd5b506097546001600160a01b0316610368565b3480156104cd57600080fd5b506102766104dc366004612873565b610b1d565b3480156104ed57600080fd5b506102766104fc366004612de3565b610b96565b34801561050d57600080fd5b5061027661051c366004612e1c565b610ba5565b34801561052d57600080fd5b5061027661053c366004612e56565b610bb9565b61027661054f366004612ea1565b610d2f565b34801561056057600080fd5b5061021961056f366004612eec565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205460ff1690565b3480156105a957600080fd5b506102766105b8366004612f1a565b610fe2565b6102766105cb366004612f98565b611108565b3480156105dc57600080fd5b506102766105eb366004612fec565b611729565b3480156105fc57600080fd5b5061027661060b366004613054565b61176e565b34801561061c57600080fd5b506102766117e4565b60006001600160a01b0383166106955760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b60006106ba826119ba565b600081815260cd602052604090206006018054606091906106eb90613071565b80601f016020809104026020016040519081016040528092919081815260200182805461071790613071565b80156107645780601f1061073957610100808354040283529160200191610764565b820191906000526020600020905b81548152906001019060200180831161074757829003601f168201915b50505050509050919050565b610778611a0a565b8060005b818110156107c0576107b0848483818110610799576107996130ab565b90506020028101906107ab91906130c1565b611a64565b6107b9816130f7565b905061077c565b50505050565b6107ce611a0a565b600082815260cd602052604090206006016107e98282613156565b505050565b6001600160a01b03851633148061080a575061080a853361056f565b6108265760405162461bcd60e51b815260040161068c90613215565b6108338585858585611c4e565b5050505050565b610842611a0a565b600082815260cd602052604090206001015481101561087457604051632627b42d60e11b815260040160405180910390fd5b600091825260cd602052604090912060020155565b60cd6020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060060180546108ca90613071565b80601f01602080910402602001604051908101604052809291908181526020018280546108f690613071565b80156109435780601f1061091857610100808354040283529160200191610943565b820191906000526020600020905b81548152906001019060200180831161092657829003601f168201915b5050505050905086565b606081518351146109b25760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b606482015260840161068c565b600083516001600160401b038111156109cd576109cd6129d7565b6040519080825280602002602001820160405280156109f6578160200160208202803683370190505b50905060005b8451811015610a6e57610a41858281518110610a1a57610a1a6130ab565b6020026020010151858381518110610a3457610a346130ab565b6020026020010151610625565b828281518110610a5357610a536130ab565b6020908102919091010152610a67816130f7565b90506109fc565b509392505050565b610a7e611a0a565b610a886000611df3565b565b610abe6040518060a00160405280600081526020016000815260200160008152602001600081526020016000151581525090565b50600091825260cd602090815260408084209284526005909201815291819020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff161515608082015290565b610b25611a0a565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613263565b610ba1338383611e45565b5050565b610bad611a0a565b610bb681611a64565b50565b600054610100900460ff1615808015610bd95750600054600160ff909116105b80610bf35750303b158015610bf3575060005460ff166001145b610c565760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161068c565b6000805460ff191660011790558015610c79576000805461ff0019166101001790555b610c9160405180602001604052806000815250611f25565b610c99611f55565b610ca284611df3565b600160cc5560c980546001600160a01b038086166001600160a01b03199283161790925560ca805485841690831617905560cb80549287169290911691909117905580156107c0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b8035600090815260cd602052604081206003810154909103610d645760405163746a696560e01b815260040160405180910390fd5b6020808301356000908152600583018252604090819020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff1615156080820152610dc081611f84565b610ddd576040516332f7a9d760e21b815260040160405180910390fd5b816002015483604001358360010154610df69190613280565b1115610e15576040516322eb5e9560e21b815260040160405180910390fd5b8060800151610ec45760ca546001600160a01b031663af92c48a853086356020880135610e4560608a018a613293565b6040518763ffffffff1660e01b8152600401610e66969594939291906132d9565b602060405180830381865afa158015610e83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea79190613263565b610ec4576040516352c973a760e01b815260040160405180910390fd5b60608101516001600160a01b038516600090815260ce602090815260408083208735845282528083208288013584529091529081902054610f089186013590613280565b1115610f2757604051631d66b65960e11b815260040160405180910390fd5b82604001358160400151610f3b9190613335565b3414610f5a576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b038416600090815260ce60209081526040808320863584528252808320828701358452909152808220805491860135929091610f9e908490613280565b925050819055508260400135826001016000828254610fbd9190613280565b909155505060408051602081018252600081526107c091869186359187013590611fbe565b610fea611a0a565b600083815260cd602052604081209082815b818110156110c5576000868683818110611018576110186130ab565b905060a0020180360381019061102e919061334c565b90508381600001511080611046575060208101518151115b1561106457604051632627b42d60e11b815260040160405180910390fd5b60008281526005860160209081526040918290208351808255918401516001820155918301516002830155606083015160038301556080909201516004909101805460ff191691151591909117905592506110be816130f7565b9050610ffc565b50600383018490556040518681527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a1505050505050565b806000816001600160401b03811115611123576111236129d7565b60405190808252806020026020018201604052801561114c578160200160208202803683370190505b5090506000826001600160401b03811115611169576111696129d7565b604051908082528060200260200182016040528015611192578160200160208202803683370190505b509050600080805b858110156116e35760cd60008989848181106111b8576111b86130ab565b90506020028101906111ca91906133c1565b600001358152602001908152602001600020915081600301546000036112035760405163746a696560e01b815260040160405180910390fd5b60008260050160008a8a8581811061121d5761121d6130ab565b905060200281019061122f91906133c1565b6020908101358252818101929092526040908101600020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff1615156080820152905061128d81611f84565b6112aa576040516332f7a9d760e21b815260040160405180910390fd5b82600201548989848181106112c1576112c16130ab565b90506020028101906112d391906133c1565b6040013584600101546112e69190613280565b1115611305576040516322eb5e9560e21b815260040160405180910390fd5b806080015161141f5760ca546001600160a01b031663af92c48a8b308c8c87818110611333576113336130ab565b905060200281019061134591906133c1565b358d8d88818110611358576113586130ab565b905060200281019061136a91906133c1565b602001358e8e89818110611380576113806130ab565b905060200281019061139291906133c1565b6113a0906060810190613293565b6040518763ffffffff1660e01b81526004016113c1969594939291906132d9565b602060405180830381865afa1580156113de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114029190613263565b61141f576040516352c973a760e01b815260040160405180910390fd5b8060600151898984818110611436576114366130ab565b905060200281019061144891906133c1565b6001600160a01b038c16600090815260ce602052604080822092013591908c8c87818110611478576114786130ab565b905060200281019061148a91906133c1565b60000135815260200190815260200160002060008c8c878181106114b0576114b06130ab565b90506020028101906114c291906133c1565b602001358152602001908152602001600020546114df9190613280565b11156114fe57604051631d66b65960e11b815260040160405180910390fd5b888883818110611510576115106130ab565b905060200281019061152291906133c1565b6001600160a01b038b16600090815260ce602052604080822092013591908b8b86818110611552576115526130ab565b905060200281019061156491906133c1565b60000135815260200190815260200160002060008b8b8681811061158a5761158a6130ab565b905060200281019061159c91906133c1565b60200135815260200190815260200160002060008282546115bd9190613280565b9091555089905088838181106115d5576115d56130ab565b90506020028101906115e791906133c1565b604001358360010160008282546115fe9190613280565b909155508990508883818110611616576116166130ab565b905060200281019061162891906133c1565b60400135816040015161163b9190613335565b6116459085613280565b9350888883818110611659576116596130ab565b905060200281019061166b91906133c1565b60000135868381518110611681576116816130ab565b60200260200101818152505088888381811061169f5761169f6130ab565b90506020028101906116b191906133c1565b604001358583815181106116c7576116c76130ab565b6020908102919091010152506116dc816130f7565b905061119a565b50813414611704576040516318f4198360e21b815260040160405180910390fd5b61171f888585604051806020016040528060008152506120a9565b5050505050505050565b6001600160a01b0385163314806117455750611745853361056f565b6117615760405162461bcd60e51b815260040161068c90613215565b6108338585858585612204565b611776611a0a565b6001600160a01b0381166117db5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161068c565b610bb681611df3565b6117ec611a0a565b60c95460cb5460405163608ebea160e01b81526001600160a01b039182166004820152600060248201819052928392169063608ebea1906044016040805180830381865afa158015611842573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186691906133d7565b90925090506001600160a01b03821661189257604051632627b42d60e11b815260040160405180910390fd5b4760006127106118a28484613335565b6118ac9190613405565b905060006118ba8284613427565b90508015611938576000856001600160a01b03168260405160006040518083038185875af1925050503d806000811461190f576040519150601f19603f3d011682016040523d82523d6000602084013e611914565b606091505b505090508061193657604051631fa55c0760e11b815260040160405180910390fd5b505b81156108335760cb546040516000916001600160a01b03169084908381818185875af1925050503d806000811461198b576040519150601f19603f3d011682016040523d82523d6000602084013e611990565b606091505b50509050806119b257604051631fa55c0760e11b815260040160405180910390fd5b505050505050565b60006001600160e01b03198216636cdb3d1360e11b14806119eb57506001600160e01b031982166303a24d0760e21b145b806106ba57506301ffc9a760e01b6001600160e01b03198316146106ba565b6097546001600160a01b03163314610a885760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161068c565b6020810135158015611a8f57506000611a8360a0830160808401613054565b6001600160a01b031614155b80611ac057506000611aa760a0830160808401613054565b6001600160a01b0316148015611ac05750602081013515155b15611ade57604051632627b42d60e11b815260040160405180910390fd5b60cc54600090815260cd6020526040812060c95460cb549192916001600160a01b039182169163ae98d8579116611b1b60a0870160808801613054565b60cc546040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b96919061343a565b80835583356002840155602084013560048401559050611bb960a0840184613293565b6006840191611bc9919083613453565b50604083013515611c3457823560408401351115611bfa57604051632627b42d60e11b815260040160405180910390fd5b60408301356001830155611c34611c176080850160608601613054565b60cc54856040013560405180602001604052806000815250611fbe565b60cc8054906000611c44836130f7565b9190505550505050565b8151835114611c6f5760405162461bcd60e51b815260040161068c90613512565b6001600160a01b038416611c955760405162461bcd60e51b815260040161068c9061355a565b33611ca4818787878787612340565b60005b8451811015611d8d576000858281518110611cc457611cc46130ab565b602002602001015190506000858381518110611ce257611ce26130ab565b60209081029190910181015160008481526065835260408082206001600160a01b038e168352909352919091205490915081811015611d335760405162461bcd60e51b815260040161068c9061359f565b60008381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290611d72908490613280565b9250508190555050505080611d86906130f7565b9050611ca7565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611ddd9291906135e9565b60405180910390a46119b2818787878787612591565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b031603611eb85760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b606482015260840161068c565b6001600160a01b03838116600081815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b600054610100900460ff16611f4c5760405162461bcd60e51b815260040161068c90613617565b610bb6816126ec565b600054610100900460ff16611f7c5760405162461bcd60e51b815260040161068c90613617565b610a8861271c565b80516000908103611fa857604051632627b42d60e11b815260040160405180910390fd5b815142108015906106ba57505060200151421090565b6001600160a01b038416611fe45760405162461bcd60e51b815260040161068c90613662565b336000611ff08561274c565b90506000611ffd8561274c565b905061200e83600089858589612340565b60008681526065602090815260408083206001600160a01b038b16845290915281208054879290612040908490613280565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46120a083600089898989612797565b50505050505050565b6001600160a01b0384166120cf5760405162461bcd60e51b815260040161068c90613662565b81518351146120f05760405162461bcd60e51b815260040161068c90613512565b3361210081600087878787612340565b60005b845181101561219c5783818151811061211e5761211e6130ab565b60200260200101516065600087848151811061213c5761213c6130ab565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b0316815260200190815260200160002060008282546121849190613280565b90915550819050612194816130f7565b915050612103565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516121ed9291906135e9565b60405180910390a461083381600087878787612591565b6001600160a01b03841661222a5760405162461bcd60e51b815260040161068c9061355a565b3360006122368561274c565b905060006122438561274c565b9050612253838989858589612340565b60008681526065602090815260408083206001600160a01b038c168452909152902054858110156122965760405162461bcd60e51b815260040161068c9061359f565b60008781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906122d5908490613280565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612335848a8a8a8a8a612797565b505050505050505050565b8251600090815b818110156123a357600060cd6000888481518110612367576123676130ab565b6020026020010151815260200190815260200160002060040154111561239357612390836130f7565b92505b61239c816130f7565b9050612347565b506000826001600160401b038111156123be576123be6129d7565b6040519080825280602002602001820160405280156123e7578160200160208202803683370190505b5090506000836001600160401b03811115612404576124046129d7565b60405190808252806020026020018201604052801561242d578160200160208202803683370190505b5090506000805b8481101561251557600060cd60008b8481518110612454576124546130ab565b602002602001015181526020019081526020016000206004015411156125055760cd60008a838151811061248a5761248a6130ab565b60200260200101518152602001908152602001600020600001548483815181106124b6576124b66130ab565b6020026020010181815250508781815181106124d4576124d46130ab565b60200260200101518383815181106124ee576124ee6130ab565b6020908102919091010152612502826130f7565b91505b61250e816130f7565b9050612434565b5060c95460cb546040516365cb42dd60e11b81526001600160a01b039283169263cb9685ba92612552929116908e908e90899089906004016136a3565b600060405180830381600087803b15801561256c57600080fd5b505af1158015612580573d6000803e3d6000fd5b505050505050505050505050505050565b6001600160a01b0384163b156119b25760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906125d590899089908890889088906004016136e9565b6020604051808303816000875af1925050508015612610575060408051601f3d908101601f1916820190925261260d9181019061373b565b60015b6126bc5761261c613758565b806308c379a0036126555750612630613774565b8061263b5750612657565b8060405162461bcd60e51b815260040161068c9190612938565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e2d455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b606482015260840161068c565b6001600160e01b0319811663bc197c8160e01b146120a05760405162461bcd60e51b815260040161068c906137fd565b600054610100900460ff166127135760405162461bcd60e51b815260040161068c90613617565b610bb681612852565b600054610100900460ff166127435760405162461bcd60e51b815260040161068c90613617565b610a8833611df3565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612786576127866130ab565b602090810291909101015292915050565b6001600160a01b0384163b156119b25760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906127db9089908990889088908890600401613845565b6020604051808303816000875af1925050508015612816575060408051601f3d908101601f191682019092526128139181019061373b565b60015b6128225761261c613758565b6001600160e01b0319811663f23a6e6160e01b146120a05760405162461bcd60e51b815260040161068c906137fd565b6067610ba18282613156565b6001600160a01b0381168114610bb657600080fd5b6000806040838503121561288657600080fd5b82356128918161285e565b946020939093013593505050565b6001600160e01b031981168114610bb657600080fd5b6000602082840312156128c757600080fd5b81356128d28161289f565b9392505050565b6000602082840312156128eb57600080fd5b5035919050565b6000815180845260005b81811015612918576020818501810151868301820152016128fc565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006128d260208301846128f2565b60008083601f84011261295d57600080fd5b5081356001600160401b0381111561297457600080fd5b6020830191508360208260051b850101111561298f57600080fd5b9250929050565b600080602083850312156129a957600080fd5b82356001600160401b038111156129bf57600080fd5b6129cb8582860161294b565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b0381118282101715612a1257612a126129d7565b6040525050565b60006001600160401b03831115612a3257612a326129d7565b604051612a49601f8501601f1916602001826129ed565b809150838152848484011115612a5e57600080fd5b83836020830137600060208583010152509392505050565b60008060408385031215612a8957600080fd5b8235915060208301356001600160401b03811115612aa657600080fd5b8301601f81018513612ab757600080fd5b612ac685823560208401612a19565b9150509250929050565b60006001600160401b03821115612ae957612ae96129d7565b5060051b60200190565b600082601f830112612b0457600080fd5b81356020612b1182612ad0565b604051612b1e82826129ed565b83815260059390931b8501820192828101915086841115612b3e57600080fd5b8286015b84811015612b595780358352918301918301612b42565b509695505050505050565b600082601f830112612b7557600080fd5b6128d283833560208501612a19565b600080600080600060a08688031215612b9c57600080fd5b8535612ba78161285e565b94506020860135612bb78161285e565b935060408601356001600160401b0380821115612bd357600080fd5b612bdf89838a01612af3565b94506060880135915080821115612bf557600080fd5b612c0189838a01612af3565b93506080880135915080821115612c1757600080fd5b50612c2488828901612b64565b9150509295509295909350565b60008060408385031215612c4457600080fd5b50508035926020909101359150565b600080600060608486031215612c6857600080fd5b8335612c738161285e565b95602085013595506040909401359392505050565b86815285602082015284604082015283606082015282608082015260c060a08201526000612cb960c08301846128f2565b98975050505050505050565b60008060408385031215612cd857600080fd5b82356001600160401b0380821115612cef57600080fd5b818501915085601f830112612d0357600080fd5b81356020612d1082612ad0565b604051612d1d82826129ed565b83815260059390931b8501820192828101915089841115612d3d57600080fd5b948201945b83861015612d64578535612d558161285e565b82529482019490820190612d42565b96505086013592505080821115612d7a57600080fd5b50612ac685828601612af3565b600081518084526020808501945080840160005b83811015612db757815187529582019590820190600101612d9b565b509495945050505050565b6020815260006128d26020830184612d87565b8015158114610bb657600080fd5b60008060408385031215612df657600080fd5b8235612e018161285e565b91506020830135612e1181612dd5565b809150509250929050565b600060208284031215612e2e57600080fd5b81356001600160401b03811115612e4457600080fd5b820160c081850312156128d257600080fd5b600080600060608486031215612e6b57600080fd5b8335612e768161285e565b92506020840135612e868161285e565b91506040840135612e968161285e565b809150509250925092565b60008060408385031215612eb457600080fd5b8235612ebf8161285e565b915060208301356001600160401b03811115612eda57600080fd5b830160808186031215612e1157600080fd5b60008060408385031215612eff57600080fd5b8235612f0a8161285e565b91506020830135612e118161285e565b600080600060408486031215612f2f57600080fd5b8335925060208401356001600160401b0380821115612f4d57600080fd5b818601915086601f830112612f6157600080fd5b813581811115612f7057600080fd5b87602060a083028501011115612f8557600080fd5b6020830194508093505050509250925092565b600080600060408486031215612fad57600080fd5b8335612fb88161285e565b925060208401356001600160401b03811115612fd357600080fd5b612fdf8682870161294b565b9497909650939450505050565b600080600080600060a0868803121561300457600080fd5b853561300f8161285e565b9450602086013561301f8161285e565b9350604086013592506060860135915060808601356001600160401b0381111561304857600080fd5b612c2488828901612b64565b60006020828403121561306657600080fd5b81356128d28161285e565b600181811c9082168061308557607f821691505b6020821081036130a557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b6000823560be198336030181126130d757600080fd5b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b600060018201613109576131096130e1565b5060010190565b601f8211156107e957600081815260208120601f850160051c810160208610156131375750805b601f850160051c820191505b818110156119b257828155600101613143565b81516001600160401b0381111561316f5761316f6129d7565b6131838161317d8454613071565b84613110565b602080601f8311600181146131b857600084156131a05750858301515b600019600386901b1c1916600185901b1785556119b2565b600085815260208120601f198616915b828110156131e7578886015182559484019460019091019084016131c8565b50858210156132055787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252602e908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526d195c881bdc88185c1c1c9bdd995960921b606082015260800190565b60006020828403121561327557600080fd5b81516128d281612dd5565b808201808211156106ba576106ba6130e1565b6000808335601e198436030181126132aa57600080fd5b8301803591506001600160401b038211156132c457600080fd5b60200191503681900382131561298f57600080fd5b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905281018290526000828460c0840137600060c0848401015260c0601f19601f8501168301019050979650505050505050565b80820281158282048414176106ba576106ba6130e1565b600060a0828403121561335e57600080fd5b60405160a081018181106001600160401b0382111715613380576133806129d7565b80604052508235815260208301356020820152604083013560408201526060830135606082015260808301356133b581612dd5565b60808201529392505050565b60008235607e198336030181126130d757600080fd5b600080604083850312156133ea57600080fd5b82516133f58161285e565b6020939093015192949293505050565b60008261342257634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106ba576106ba6130e1565b60006020828403121561344c57600080fd5b5051919050565b6001600160401b0383111561346a5761346a6129d7565b61347e836134788354613071565b83613110565b6000601f8411600181146134b2576000851561349a5750838201355b600019600387901b1c1916600186901b178355610833565b600083815260209020601f19861690835b828110156134e357868501358255602094850194600190920191016134c3565b50868210156135005760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b6040815260006135fc6040830185612d87565b828103602084015261360e8185612d87565b95945050505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b6001600160a01b03868116825285811660208301528416604082015260a0606082018190526000906136d790830185612d87565b8281036080840152612cb98185612d87565b6001600160a01b0386811682528516602082015260a06040820181905260009061371590830186612d87565b82810360608401526137278186612d87565b90508281036080840152612cb981856128f2565b60006020828403121561374d57600080fd5b81516128d28161289f565b600060033d11156137715760046000803e5060005160e01c5b90565b600060443d10156137825790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156137b157505050505090565b82850191508151818111156137c95750505050505090565b843d87010160208285010111156137e35750505050505090565b6137f2602082860101876129ed565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061387f908301846128f2565b97965050505050505056fea2646970667358221220cf140f171ac2d5ea9a23d7d808cffff11645eee9fe1e63f3531c56345a29b58364736f6c63430008130033", + "nonce": "0x1e", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xdd48533298d4b7e8bb518eae8992de96792719630564545a4755a197f444bb2c", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0xe809751f9b135C63dc49f2Ba6D0a11A183420b95", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x28a433", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61239f80620000ee6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80638fd1101c11610104578063b81155b5116100a2578063df3d053b11610071578063df3d053b14610452578063ef1103d614610465578063f837232014610478578063fa3550671461048157600080fd5b8063b81155b5146103da578063cfc5a0c014610417578063d518b7ff1461042c578063d547741f1461043f57600080fd5b8063a217fddf116100de578063a217fddf14610383578063a626f5731461038b578063aa29f45e146103b4578063b08805a5146103c757600080fd5b80638fd1101c1461034a57806391d148541461035d5780639ab29f2b1461037057600080fd5b8063485cc9551161017157806378c5195e1161014b57806378c5195e146102fe57806387260f19146103115780638a69614e146103245780638c72c54e1461033757600080fd5b8063485cc955146102be5780636ce10ab6146102d1578063754b377c146102e457600080fd5b80632f2ff15d116101ad5780632f2ff15d1461026e57806336568abe146102835780633d695c521461029657806342f1e879146102a957600080fd5b806301ffc9a7146101d45780631d3b405a146101fc578063248a9ca31461023d575b600080fd5b6101e76101e2366004611a9a565b610494565b60405190151581526020015b60405180910390f35b61022561020a366004611ac4565b6098602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b61026061024b366004611ac4565b60009081526065602052604090206001015490565b6040519081526020016101f3565b61028161027c366004611af2565b6104cb565b005b610281610291366004611af2565b6104f5565b6102816102a4366004611b6d565b610578565b61026060008051602061234a83398151915281565b6102816102cc366004611bae565b6105bc565b6102816102df366004611bdc565b610718565b6102ec600181565b60405160ff90911681526020016101f3565b61026061030c366004611af2565b6107aa565b61028161031f366004611c1d565b6107d8565b610281610332366004611ac4565b61087b565b609754610225906001600160a01b031681565b610281610358366004611c88565b610888565b6101e761036b366004611af2565b6108d3565b61026061037e366004611af2565b6108fe565b610260600081565b610225610399366004611ac4565b6099602052600090815260409020546001600160a01b031681565b6102816103c2366004611af2565b610935565b6102816103d5366004611cce565b610957565b6103ed6103e8366004611ac4565b610979565b604080516001600160801b03948516815292841660208401529216918101919091526060016101f3565b61026060008051602061232a83398151915281565b61028161043a366004611cf0565b6109ae565b61028161044d366004611af2565b610a93565b610281610460366004611d92565b610ab8565b610281610473366004611dcb565b610b5c565b6102606103e881565b61028161048f366004611e16565b610bba565b60006001600160e01b03198216637965db0b60e01b14806104c557506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000828152606560205260409020600101546104e681610c03565b6104f08383610c0d565b505050565b6001600160a01b038116331461056a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6105748282610c93565b5050565b8060005b818110156105b6576105a684848381811061059957610599611e61565b9050602002013533610cfa565b6105af81611e8d565b905061057c565b50505050565b600054610100900460ff16158080156105dc5750600054600160ff909116105b806105f65750303b1580156105f6575060005460ff166001145b6106595760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610561565b6000805460ff19166001179055801561067c576000805461ff0019166101001790555b610684610d1e565b61068f600084610c0d565b61069a600033610c93565b6106b260008051602061234a83398151915283610c0d565b609780546001600160a01b0319166001600160a01b03851617905580156104f0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a1505050565b60008051602061234a83398151915261073081610c03565b60006107456001600160a01b03851684610d8b565b90508061076557604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260986020908152604080832080546001600160a01b039687166001600160a01b03199182161790915560999092529091208054929093169116179055565b6000828152609960205260408120546107ce906001600160a01b0316308585610eb0565b9695505050505050565b60008051602061232a8339815191526107f081610c03565b818460005b828110156108715760005b828110156108605761085089898381811061081d5761081d611e61565b9050602002013588888581811061083657610836611e61565b905060200201602081019061084b9190611ea6565b610cfa565b61085981611e8d565b9050610800565b5061086a81611e8d565b90506107f5565b5050505050505050565b6108858133610cfa565b50565b60008051602061234a8339815191526108a081610c03565b6108b685846108b16103e886611ec3565b610f5f565b6108cc84846108c76103e886611ec3565b611010565b5050505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600082815260996020526040812054610922906001600160a01b0316308585610eb0565b506001600160801b031695945050505050565b60008051602061232a83398151915261094d81610c03565b6104f08383610cfa565b60008051602061234a83398151915261096f81610c03565b6104f08383611066565b600081815260996020526040812054819081906109a0906001600160a01b031630866110e8565b919790965090945092505050565b60008051602061234a8339815191526109c681610c03565b838281146109e757604051632627b42d60e11b815260040160405180910390fd5b60005b81811015610a8857610a3589888884818110610a0857610a08611e61565b905060200201356103e8888886818110610a2457610a24611e61565b905060200201356108b19190611ec3565b610a7888888884818110610a4b57610a4b611e61565b905060200201356103e8888886818110610a6757610a67611e61565b905060200201356108c79190611ec3565b610a8181611e8d565b90506109ea565b505050505050505050565b600082815260656020526040902060010154610aae81610c03565b6104f08383610c93565b6000610ac381610c03565b81610b5257600084815260996020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610b2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b509190611eda565b505b6105b68484611066565b60008051602061232a833981519152610b7481610c03565b8260005b81811015610bb257610ba2868683818110610b9557610b95611e61565b9050602002013585610cfa565b610bab81611e8d565b9050610b78565b505050505050565b60008051602061232a833981519152610bd281610c03565b60005b828110156108cc57610bf38585858481811061083657610836611e61565b610bfc81611e8d565b9050610bd5565b610885813361118e565b610c1782826108d3565b6105745760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610c4f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610c9d82826108d3565b156105745760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000828152609960205260409020546104f0906001600160a01b03163084846111e7565b600054610100900460ff16610d895760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610561565b565b6000806000610d9985611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610dd757610dd7611ef7565b6040519080825280601f01601f191660200182016040528015610e01576020820181803683370190505b50604051602401610e1493929190611f5d565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610e5d93925090600401611f96565b6000604051808303816000875af1158015610e7c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ea49190810190611fdd565b50600195945050505050565b6000806000806000610ec1896114d9565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa158015610f28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4c91906120a5565b929c919b50995090975095505050505050565b6001600160a01b038316610f7257505050565b600082815260996020526040812054610f96906001600160a01b0316308587610eb0565b506001600160801b03169250505060008282610fb291906120f5565b11610fe157600083815260996020526040902054610fdb906001600160a01b031630858761163e565b506105b6565b6108cc8385610ff085856120f5565b6000878152609960205260409020546001600160a01b031692919061168c565b6001600160a01b03831661102357505050565b600082815260996020526040812054611047906001600160a01b0316308587610eb0565b506001600160801b0316925050506108cc83858484610ff09190612108565b60008281526099602052604081205461108a906001600160a01b0316308585611719565b506000848152609960205260409020549091506110b1906001600160a01b031684836117be565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910161070b565b60008060008060006110f9886114d9565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117c919061211b565b94509450945094505093509350935093565b61119882826108d3565b610574576111a5816118e6565b6111b08360206118f8565b6040516020016111c1929190612171565b60408051601f198184030181529082905262461bcd60e51b8252610561916004016121e6565b60008060006111f587611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b0381111561123557611235611ef7565b6040519080825280601f01601f19166020018201604052801561125f576020820181803683370190505b506040516024016112749594939291906121f9565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b03191682526112bd93925090600401611f96565b6000604051808303816000875af11580156112dc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113049190810190611fdd565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b0381166114a8576001600160a01b0382166113d757826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa1580156113b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d49190612239565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa15801561143b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061145f9190612239565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b0382166114be576114be612256565b6001600160a01b0381166114d4576114d4612256565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b0381166114a8576001600160a01b03821661159e57826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611577573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159b9190612239565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa158015611602573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116269190612239565b90506001600160a01b0382166114be576114be612256565b600080600061164c87611312565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b0381111561123557611235611ef7565b600080600061169a87611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b038111156116da576116da611ef7565b6040519080825280601f01601f191660200182016040528015611704576020820181803683370190505b5060405160240161127495949392919061226c565b6000806000611727876114d9565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa15801561178c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b091906122b3565b925092505094509492505050565b60008060006117cc86611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b0381111561180b5761180b611ef7565b6040519080825280601f01601f191660200182016040528015611835576020820181803683370190505b5060405160240161184994939291906122df565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261189293925090600401611f96565b6000604051808303816000875af11580156118b1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118d99190810190611fdd565b5060019695505050505050565b60606104c56001600160a01b03831660145b60606000611907836002611ec3565b611912906002612108565b6001600160401b0381111561192957611929611ef7565b6040519080825280601f01601f191660200182016040528015611953576020820181803683370190505b509050600360fc1b8160008151811061196e5761196e611e61565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061199d5761199d611e61565b60200101906001600160f81b031916908160001a90535060006119c1846002611ec3565b6119cc906001612108565b90505b6001811115611a44576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611a0057611a00611e61565b1a60f81b828281518110611a1657611a16611e61565b60200101906001600160f81b031916908160001a90535060049490941c93611a3d81612312565b90506119cf565b508315611a935760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610561565b9392505050565b600060208284031215611aac57600080fd5b81356001600160e01b031981168114611a9357600080fd5b600060208284031215611ad657600080fd5b5035919050565b6001600160a01b038116811461088557600080fd5b60008060408385031215611b0557600080fd5b823591506020830135611b1781611add565b809150509250929050565b60008083601f840112611b3457600080fd5b5081356001600160401b03811115611b4b57600080fd5b6020830191508360208260051b8501011115611b6657600080fd5b9250929050565b60008060208385031215611b8057600080fd5b82356001600160401b03811115611b9657600080fd5b611ba285828601611b22565b90969095509350505050565b60008060408385031215611bc157600080fd5b8235611bcc81611add565b91506020830135611b1781611add565b600080600060608486031215611bf157600080fd5b8335611bfc81611add565b92506020840135611c0c81611add565b929592945050506040919091013590565b60008060008060408587031215611c3357600080fd5b84356001600160401b0380821115611c4a57600080fd5b611c5688838901611b22565b90965094506020870135915080821115611c6f57600080fd5b50611c7c87828801611b22565b95989497509550505050565b60008060008060808587031215611c9e57600080fd5b8435611ca981611add565b93506020850135611cb981611add565b93969395505050506040820135916060013590565b60008060408385031215611ce157600080fd5b50508035926020909101359150565b60008060008060008060808789031215611d0957600080fd5b8635611d1481611add565b95506020870135611d2481611add565b945060408701356001600160401b0380821115611d4057600080fd5b611d4c8a838b01611b22565b90965094506060890135915080821115611d6557600080fd5b50611d7289828a01611b22565b979a9699509497509295939492505050565b801515811461088557600080fd5b600080600060608486031215611da757600080fd5b83359250602084013591506040840135611dc081611d84565b809150509250925092565b600080600060408486031215611de057600080fd5b83356001600160401b03811115611df657600080fd5b611e0286828701611b22565b9094509250506020840135611dc081611add565b600080600060408486031215611e2b57600080fd5b8335925060208401356001600160401b03811115611e4857600080fd5b611e5486828701611b22565b9497909650939450505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611e9f57611e9f611e77565b5060010190565b600060208284031215611eb857600080fd5b8135611a9381611add565b80820281158282048414176104c5576104c5611e77565b600060208284031215611eec57600080fd5b8151611a9381611d84565b634e487b7160e01b600052604160045260246000fd5b60005b83811015611f28578181015183820152602001611f10565b50506000910152565b60008151808452611f49816020860160208601611f0d565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090611f8d90830184611f31565b95945050505050565b6001600160a01b0383168152606060208201819052600090611fba90830184611f31565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b600060208284031215611fef57600080fd5b81516001600160401b038082111561200657600080fd5b818401915084601f83011261201a57600080fd5b81518181111561202c5761202c611ef7565b604051601f8201601f19908116603f0116810190838211818310171561205457612054611ef7565b8160405282815287602084870101111561206d57600080fd5b61207e836020830160208801611f0d565b979650505050505050565b80516001600160801b03811681146120a057600080fd5b919050565b600080600080608085870312156120bb57600080fd5b84516120c681611d84565b60208601519094506120d781611d84565b92506120e560408601612089565b6060959095015193969295505050565b818103818111156104c5576104c5611e77565b808201808211156104c5576104c5611e77565b6000806000806080858703121561213157600080fd5b845161213c81611d84565b935061214a60208601612089565b925061215860408601612089565b915061216660608601612089565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516121a9816017850160208801611f0d565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516121da816028840160208801611f0d565b01602801949350505050565b602081526000611a936020830184611f31565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061207e90830184611f31565b60006020828403121561224b57600080fd5b8151611a9381611add565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061207e90830184611f31565b600080604083850312156122c657600080fd5b825191506122d660208401612089565b90509250929050565b60018060a01b038516815263ffffffff841660208201528260408201526080606082015260006107ce6080830184611f31565b60008161232157612321611e77565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca264697066735822122092b0e50e4ae8020bc01793d015d9fc0503a0b339b20e0e5a4bd6ef82f54b2ec764736f6c63430008130033", + "nonce": "0x1f", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x4e5d9576e77720a7dbdd0b19de8f936d0d2087a48546fcd5149fa02c66e8cf10", + "transactionType": "CREATE", + "contractName": "ABVerifier", + "contractAddress": "0x370cE6635140Cf7d47e2b86e20A68736fE1A3f0C", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x16da46", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611366806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80637adaeebe116100ad578063cbc6512411610071578063cbc6512414610267578063ccac2c131461027a578063cfc5a0c01461028d578063d547741f146102b4578063ed9ec8c6146102c757600080fd5b80637adaeebe1461021357806391d1485414610226578063a217fddf14610239578063af92c48a14610241578063c4d66de81461025457600080fd5b806336568abe116100f457806336568abe146101bf5780633a774256146101d2578063437a0de9146101e55780634a96535b146101f8578063627cdcb91461020b57600080fd5b806301ffc9a7146101265780631180b5531461014e578063248a9ca3146101795780632f2ff15d146101aa575b600080fd5b610139610134366004610f66565b6102da565b60405190151581526020015b60405180910390f35b61016161015c366004610fac565b610311565b6040516001600160a01b039091168152602001610145565b61019c610187366004610fc7565b60009081526065602052604090206001015490565b604051908152602001610145565b6101bd6101b8366004610fe0565b61031c565b005b6101bd6101cd366004610fe0565b610346565b6101396101e036600461104e565b6103c9565b609754610161906001600160a01b031681565b6101bd610206366004610fac565b6104b0565b6101bd6104de565b6101bd610221366004610fac565b6104ff565b610139610234366004610fe0565b61052d565b61019c600081565b61013961024f3660046110a1565b610558565b6101bd610262366004610fac565b610661565b610139610275366004611119565b6107bf565b6101bd610288366004611188565b6108c0565b61019c7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b6101bd6102c2366004610fe0565b610919565b609854610161906001600160a01b031681565b60006001600160e01b03198216637965db0b60e01b148061030b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061030b8261093e565b60008281526065602052604090206001015461033781610970565b610341838361097d565b505050565b6001600160a01b03811633146103bb5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6103c58282610a03565b5050565b609a546040516001600160601b0319606086901b1660208201526034810191909152600090819060540160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061049684848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6098546001600160a01b0390811691161495945050505050565b60006104bb81610970565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006104e981610970565b609a600081546104f8906111c8565b9091555050565b600061050a81610970565b50609880546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000806105648761093e565b6040516001600160601b031960608b811b821660208401528a901b166034820152604881018890526068810187905290915060009060880160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061063f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6001600160a01b0316826001600160a01b031614925050509695505050505050565b600054610100900460ff16158080156106815750600054600160ff909116105b8061069b5750303b15801561069b575060005460ff166001145b6106fe5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016103b2565b6000805460ff191660011790558015610721576000805461ff0019166101001790555b6001600160a01b03821661074857604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b03841617905561076b610a8e565b610776600033610afb565b80156103c5576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6000806107cb8661093e565b6040516001600160601b031960608a811b8216602084015289901b1660348201526048810187905290915060009060680160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061089f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6001600160a01b0316826001600160a01b0316149250505095945050505050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e6108ea81610970565b506001600160a01b03918216600090815260996020526040902080546001600160a01b03191691909216179055565b60008281526065602052604090206001015461093481610970565b6103418383610a03565b6097546001600160a01b038281166000908152609960205260409020549181169116801561096a578091505b50919050565b61097a8133610b05565b50565b610987828261052d565b6103c55760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556109bf3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610a0d828261052d565b156103c55760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610a798585610b5e565b91509150610a8681610ba3565b509392505050565b600054610100900460ff16610af95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016103b2565b565b6103c5828261097d565b610b0f828261052d565b6103c557610b1c81610ced565b610b27836020610cff565b604051602001610b38929190611205565b60408051601f198184030181529082905262461bcd60e51b82526103b29160040161127a565b6000808251604103610b945760208301516040840151606085015160001a610b8887828585610ea2565b94509450505050610b9c565b506000905060025b9250929050565b6000816004811115610bb757610bb76112ad565b03610bbf5750565b6001816004811115610bd357610bd36112ad565b03610c205760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016103b2565b6002816004811115610c3457610c346112ad565b03610c815760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016103b2565b6003816004811115610c9557610c956112ad565b0361097a5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016103b2565b606061030b6001600160a01b03831660145b60606000610d0e8360026112c3565b610d199060026112da565b67ffffffffffffffff811115610d3157610d316112ed565b6040519080825280601f01601f191660200182016040528015610d5b576020820181803683370190505b509050600360fc1b81600081518110610d7657610d76611303565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610da557610da5611303565b60200101906001600160f81b031916908160001a9053506000610dc98460026112c3565b610dd49060016112da565b90505b6001811115610e4c576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610e0857610e08611303565b1a60f81b828281518110610e1e57610e1e611303565b60200101906001600160f81b031916908160001a90535060049490941c93610e4581611319565b9050610dd7565b508315610e9b5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016103b2565b9392505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610ed95750600090506003610f5d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610f2d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610f5657600060019250925050610f5d565b9150600090505b94509492505050565b600060208284031215610f7857600080fd5b81356001600160e01b031981168114610e9b57600080fd5b80356001600160a01b0381168114610fa757600080fd5b919050565b600060208284031215610fbe57600080fd5b610e9b82610f90565b600060208284031215610fd957600080fd5b5035919050565b60008060408385031215610ff357600080fd5b8235915061100360208401610f90565b90509250929050565b60008083601f84011261101e57600080fd5b50813567ffffffffffffffff81111561103657600080fd5b602083019150836020828501011115610b9c57600080fd5b60008060006040848603121561106357600080fd5b61106c84610f90565b9250602084013567ffffffffffffffff81111561108857600080fd5b6110948682870161100c565b9497909650939450505050565b60008060008060008060a087890312156110ba57600080fd5b6110c387610f90565b95506110d160208801610f90565b94506040870135935060608701359250608087013567ffffffffffffffff8111156110fb57600080fd5b61110789828a0161100c565b979a9699509497509295939492505050565b60008060008060006080868803121561113157600080fd5b61113a86610f90565b945061114860208701610f90565b935060408601359250606086013567ffffffffffffffff81111561116b57600080fd5b6111778882890161100c565b969995985093965092949392505050565b6000806040838503121561119b57600080fd5b6111a483610f90565b915061100360208401610f90565b634e487b7160e01b600052601160045260246000fd5b6000600182016111da576111da6111b2565b5060010190565b60005b838110156111fc5781810151838201526020016111e4565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161123d8160178501602088016111e1565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161126e8160288401602088016111e1565b01602801949350505050565b60208152600082518060208401526112998160408501602087016111e1565b601f01601f19169190910160400192915050565b634e487b7160e01b600052602160045260246000fd5b808202811582820484141761030b5761030b6111b2565b8082018082111561030b5761030b6111b2565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081611328576113286111b2565b50600019019056fea2646970667358221220f66200a430c167ad4f1ae625723f35c23be8862c0bf9cba0bfccd975c30aafc764736f6c63430008130033", + "nonce": "0x20", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xc3d2428463cc787d8ba9085b2f366babc63763a8436a8d655d0bb88b5b89135a", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x48254cEc35d0Bf845c877d5903d04B9643077bE1", + "function": null, + "arguments": [ + "0x370cE6635140Cf7d47e2b86e20A68736fE1A3f0C", + "0x305D807d22070DfFF295f5575eCD354f72c2eB76", + "0xc4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xcddbb", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000370ce6635140cf7d47e2b86e20a68736fe1a3f0c000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb7600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x21", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xda47f7c35576e54ee65ff025df3b7987619faf0da7b40050b3175925dc06cbbf", + "transactionType": "CREATE", + "contractName": null, + "contractAddress": "0xaC4d78F00D5bdb881434ad98037E2e5f0eeA1995", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x1b48fb", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611770806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638353b91911610104578063b9138580116100a2578063d547741f11610071578063d547741f146104fd578063da35a26f14610510578063dd3394aa14610523578063f0f442601461053657600080fd5b8063b9138580146104a4578063b9d47392146104c4578063c70eae8c146104d7578063cb9685ba146104ea57600080fd5b806391d14854116100de57806391d1485414610463578063977f82ba14610476578063a217fddf14610489578063ae98d8571461049157600080fd5b80638353b919146104115780638392767d146104245780638ffaa1401461043757600080fd5b80632f2ff15d1161017c5780635eb399681161014b5780635eb399681461036a578063608ebea1146103ac57806369ca69a5146103de57806371ef9a93146103fe57600080fd5b80632f2ff15d146102f357806336568abe1461030657806341859ac8146103195780635134b49a1461034757600080fd5b80630a4d85cd116101b85780630a4d85cd14610265578063145f8dd4146102a657806319742e6c146102bb578063248a9ca3146102d057600080fd5b806301ffc9a7146101df57806304a0fb1714610207578063069a9b641461023c575b600080fd5b6101f26101ed36600461123e565b610549565b60405190151581526020015b60405180910390f35b61022e7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee2781565b6040519081526020016101fe565b61022e61024a366004611284565b6001600160a01b031660009081526099602052604090205490565b61028e610273366004611284565b6098602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b61022e60008051602061171b83398151915281565b6102ce6102c936600461129f565b610580565b005b61022e6102de3660046112d9565b60009081526065602052604090206001015490565b6102ce6103013660046112f2565b6105da565b6102ce6103143660046112f2565b610604565b6101f2610327366004611284565b6001600160a01b0390811660009081526098602052604090205416151590565b6101f26103553660046112d9565b609c6020526000908152604090205460ff1681565b61037d6103783660046112d9565b610687565b6040805194855260208501939093526001600160a01b03918216928401929092521660608201526080016101fe565b6103bf6103ba36600461131e565b6106cd565b604080516001600160a01b0390931683526020830191909152016101fe565b61022e6103ec3660046112d9565b609d6020526000908152604090205481565b6102ce61040c36600461131e565b61072b565b6102ce61041f366004611348565b610790565b609b5461028e906001600160a01b031681565b61028e610445366004611284565b6001600160a01b039081166000908152609860205260409020541690565b6101f26104713660046112f2565b610864565b6102ce610484366004611384565b61088f565b61022e600081565b61022e61049f366004611348565b610937565b61022e6104b2366004611284565b60996020526000908152604090205481565b6102ce6104d23660046113d9565b610b2b565b6102ce6104e5366004611284565b610b8c565b6102ce6104f83660046114b4565b610bce565b6102ce61050b3660046112f2565b610c2d565b6102ce61051e3660046112f2565b610c52565b6102ce61053136600461154a565b610dc3565b6102ce610544366004611284565b610e6f565b60006001600160e01b03198216637965db0b60e01b148061057a57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061058b81610e9d565b6127108211156105ae57604051632627b42d60e11b815260040160405180910390fd5b506000918252609c60209081526040808420805460ff191695151595909517909455609d905291902055565b6000828152606560205260409020600101546105f581610e9d565b6105ff8383610eaa565b505050565b6001600160a01b03811633146106795760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6106838282610f30565b5050565b609a818154811061069757600080fd5b60009182526020909120600490910201805460018201546002830154600390930154919350916001600160a01b03908116911684565b6000818152609c6020526040812054819060ff16156106fb57506000828152609d6020526040902054610716565b506001600160a01b0383166000908152609960205260409020545b609b546001600160a01b031694909350915050565b600061073681610e9d565b6001600160a01b038316600081815260996020908152604091829020859055815192835282018490527fc1c540da095b5b6d54738e18568e3c832ae9d1a26f1abeb3e69efde2d4fd6ec291015b60405180910390a1505050565b7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee276107ba81610e9d565b6001600160a01b0384811660009081526098602052604090205416156107f35760405163515567cf60e01b815260040160405180910390fd5b6001600160a01b03848116600081815260986020908152604080832080546001600160a01b0319169589169586179055609982529182902086905590519182527fb0c28f4dd5b8aa95e332651d07f6930a2f9d46ae2bc4bfa73e2f33e478a1269b910160405180910390a250505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60008051602061171b8339815191526108a781610e9d565b6001600160a01b03868116600090815260986020526040908190205490516323f4440760e21b81528783166004820152868316602482015260448101869052606481018590529116908190638fd1101c906084015b600060405180830381600087803b15801561091657600080fd5b505af115801561092a573d6000803e3d6000fd5b5050505050505050505050565b600060008051602061171b83398151915261095181610e9d565b610959610f97565b6040805160808101825282815260208082018781526001600160a01b038a81168486018181523360608701818152609a8054600181018255600091909152975160049098027f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be481019890985594517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be588015590517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be6870180549185166001600160a01b031992831617905593517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be790960180549690931695909316949094179055835190815290810191909152919350849184917f5cbfe9cceabf50e9fcfff39e46cd47b1667ad148238648e99aee4fa0e1193d43910160405180910390a36001600160a01b03841615610b23576001600160a01b0385811660009081526098602052604090819020549051633670855b60e11b8152336004820152868316602482015260448101859052911690636ce10ab690606401600060405180830381600087803b158015610b0a57600080fd5b505af1158015610b1e573d6000803e3d6000fd5b505050505b509392505050565b6000610b3681610e9d565b6001600160a01b038216610b5d57604051632627b42d60e11b815260040160405180910390fd5b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee27610bb681610e9d565b61068360008051602061171b83398151915283610eaa565b60008051602061171b833981519152610be681610e9d565b6001600160a01b038087166000908152609860205260409081902054905163d518b7ff60e01b8152911690819063d518b7ff906108fc9089908990899089906004016115a3565b600082815260656020526040902060010154610c4881610e9d565b6105ff8383610f30565b600054610100900460ff1615808015610c725750600054600160ff909116105b80610c8c5750303b158015610c8c575060005460ff166001145b610cef5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610670565b6000805460ff191660011790558015610d12576000805461ff0019166101001790555b610d1a610fb9565b610d25600033611026565b6097839055609b80546001600160a01b0319166001600160a01b03841690811790915560408051918252602082018590527fa4888636278c973bcfd5eca8f86d67bf0c980edbf1740721c6f229b0421ae1e2910160405180910390a180156105ff576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610783565b6000610dce81610e9d565b6001600160a01b038085166000908152609860205260409020541680610e0757604051632627b42d60e11b815260040160405180910390fd5b60405163b08805a560e01b815260048101859052602481018490526001600160a01b0382169063b08805a590604401600060405180830381600087803b158015610e5057600080fd5b505af1158015610e64573d6000803e3d6000fd5b505050505050505050565b6000610e7a81610e9d565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b610ea78133611030565b50565b610eb48282610864565b6106835760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610eec3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610f3a8282610864565b156106835760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b609a54609754600091610fa9916115f7565b610fb49060016115f7565b905090565b600054610100900460ff166110245760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610670565b565b6106838282610eaa565b61103a8282610864565b6106835761104781611089565b61105283602061109b565b60405160200161106392919061162e565b60408051601f198184030181529082905262461bcd60e51b8252610670916004016116a3565b606061057a6001600160a01b03831660145b606060006110aa8360026116d6565b6110b59060026115f7565b67ffffffffffffffff8111156110cd576110cd611403565b6040519080825280601f01601f1916602001820160405280156110f7576020820181803683370190505b509050600360fc1b81600081518110611112576111126116ed565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611141576111416116ed565b60200101906001600160f81b031916908160001a90535060006111658460026116d6565b6111709060016115f7565b90505b60018111156111e8576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106111a4576111a46116ed565b1a60f81b8282815181106111ba576111ba6116ed565b60200101906001600160f81b031916908160001a90535060049490941c936111e181611703565b9050611173565b5083156112375760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610670565b9392505050565b60006020828403121561125057600080fd5b81356001600160e01b03198116811461123757600080fd5b80356001600160a01b038116811461127f57600080fd5b919050565b60006020828403121561129657600080fd5b61123782611268565b6000806000606084860312156112b457600080fd5b833580151581146112c457600080fd5b95602085013595506040909401359392505050565b6000602082840312156112eb57600080fd5b5035919050565b6000806040838503121561130557600080fd5b8235915061131560208401611268565b90509250929050565b6000806040838503121561133157600080fd5b61133a83611268565b946020939093013593505050565b60008060006060848603121561135d57600080fd5b61136684611268565b925061137460208501611268565b9150604084013590509250925092565b600080600080600060a0868803121561139c57600080fd5b6113a586611268565b94506113b360208701611268565b93506113c160408701611268565b94979396509394606081013594506080013592915050565b600080604083850312156113ec57600080fd5b6113f583611268565b915061131560208401611268565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261142a57600080fd5b8135602067ffffffffffffffff8083111561144757611447611403565b8260051b604051601f19603f8301168101818110848211171561146c5761146c611403565b60405293845285810183019383810192508785111561148a57600080fd5b83870191505b848210156114a957813583529183019190830190611490565b979650505050505050565b600080600080600060a086880312156114cc57600080fd5b6114d586611268565b94506114e360208701611268565b93506114f160408701611268565b9250606086013567ffffffffffffffff8082111561150e57600080fd5b61151a89838a01611419565b9350608088013591508082111561153057600080fd5b5061153d88828901611419565b9150509295509295909350565b60008060006060848603121561155f57600080fd5b6112c484611268565b600081518084526020808501945080840160005b838110156115985781518752958201959082019060010161157c565b509495945050505050565b6001600160a01b038581168252841660208201526080604082018190526000906115cf90830185611568565b82810360608401526114a98185611568565b634e487b7160e01b600052601160045260246000fd5b8082018082111561057a5761057a6115e1565b60005b8381101561162557818101518382015260200161160d565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161166681601785016020880161160a565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161169781602884016020880161160a565b01602801949350505050565b60208152600082518060208401526116c281604085016020870161160a565b601f01601f19169190910160400192915050565b808202811582820484141761057a5761057a6115e1565b634e487b7160e01b600052603260045260246000fd5b600081611712576117126115e1565b50600019019056fe40a5c770eee7730548a6335e1f372e76bf4759f6fda1a932bd9cfc33106f0b4ca2646970667358221220ca2dc61d57487a62371bc74dd138bad9447ad75c86bac12783a70400e6327b7b64736f6c63430008130033", + "nonce": "0x22", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x381f7556bf3b2bb0793dcf7c2ed10ce6952829f51867e4386a937b5a7d652a90", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x6e33CA04ec976B09291d9a470F7a88f3219B3abf", + "function": null, + "arguments": [ + "0xaC4d78F00D5bdb881434ad98037E2e5f0eeA1995", + "0x305D807d22070DfFF295f5575eCD354f72c2eB76", + "0xda35a26f0000000000000000000000000000000000000000000000000000000000004e20000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xd560f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000ac4d78f00d5bdb881434ad98037e2e5f0eea1995000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb7600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044da35a26f0000000000000000000000000000000000000000000000000000000000004e20000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x23", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x3cd7be1819bb0603879cf0c050384d1cf7d8ac2944b661f265b1383a2038687c", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0x718C9494Cf206568fe4465B30C78bc5Ddcc12689", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x1c20a8", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611836806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80636b7e394911610104578063a217fddf116100a2578063d57f966b11610071578063d57f966b146103f3578063d8f4b6fd146103fc578063e442ac1814610411578063fdbda0ec1461042457600080fd5b8063a217fddf146103b0578063bdd2fe78146103b8578063cfc5a0c0146103cb578063d547741f146103e057600080fd5b8063832ca2f5116100de578063832ca2f5146103645780638d058ac81461037757806391d148541461038a5780639f1fb80d1461039d57600080fd5b80636b7e39491461032b5780636cc82b841461033e5780637d2405bb1461035157600080fd5b8063248a9ca3116101715780634128541c1161014b5780634128541c146102df5780634c7dfac3146102f2578063641254bd14610305578063678213491461031857600080fd5b8063248a9ca3146102885780632f2ff15d146102b957806336568abe146102cc57600080fd5b80631c8518c2116101ad5780631c8518c2146102245780631ce6e4441461024f5780631e5b368414610262578063229a8a821461027557600080fd5b806301ffc9a7146101d45780631459457a146101fc57806318c25d8a14610211575b600080fd5b6101e76101e2366004611348565b610457565b60405190151581526020015b60405180910390f35b61020f61020a366004611389565b61048e565b005b61020f61021f3660046113ee565b61060f565b609b54610237906001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b609a54610237906001600160a01b031681565b61020f610270366004611418565b61077f565b610237610283366004611418565b610831565b6102ab610296366004611418565b60009081526065602052604090206001015490565b6040519081526020016101f3565b61020f6102c7366004611431565b61084b565b61020f6102da366004611431565b610870565b609854610237906001600160a01b031681565b6101e761030036600461145d565b6108ee565b61020f61031336600461145d565b610908565b61020f610326366004611478565b610936565b61020f61033936600461145d565b6109d9565b609954610237906001600160a01b031681565b61020f61035f36600461145d565b610a09565b61020f61037236600461145d565b610a37565b610237610385366004611418565b610a65565b6101e7610398366004611431565b610a7f565b61020f6103ab366004611557565b610aaa565b6102ab600081565b609c54610237906001600160a01b031681565b6102ab6000805160206117c183398151915281565b61020f6103ee366004611431565b610bd4565b6102ab609d5481565b6102ab6000805160206117e183398151915281565b61020f61041f3660046115bd565b610bf9565b610437610432366004611418565b610ca5565b604080516001600160a01b039384168152929091166020830152016101f3565b60006001600160e01b03198216637965db0b60e01b148061048857506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156104ae5750600054600160ff909116105b806104c85750303b1580156104c8575060005460ff166001145b6105305760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610553576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d556105b6610cde565b6105c1600033610d4b565b8015610607576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b6000805160206117c183398151915261062781610d55565b61271082111561064a57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661067157604051632627b42d60e11b815260040160405180910390fd5b609c54600090610689906001600160a01b0316610d62565b60985460405163485cc95560e01b81526001600160a01b038781166004830152918216602482015291925082169063485cc95590604401600060405180830381600087803b1580156106da57600080fd5b505af11580156106ee573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b91991506064015b600060405180830381600087803b15801561074957600080fd5b505af115801561075d573d6000803e3d6000fd5b505050506107796000805160206117e18339815191528561084b565b50505050565b6000805160206117e183398151915261079781610d55565b609b546000906107b0906001600160a01b031684610dfc565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561080a57600080fd5b505af115801561081e573d6000803e3d6000fd5b5050505061082c8133610e99565b505050565b609a54600090610488906001600160a01b03168330610ff1565b60008281526065602052604090206001015461086681610d55565b61082c838361104d565b6001600160a01b03811633146108e05760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610527565b6108ea82826110d3565b5050565b60006104886000805160206117e183398151915283610a7f565b600061091381610d55565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b6000805160206117c183398151915261094e81610d55565b61271082111561097157604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03841661099857604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b9199060640161072f565b6000805160206117c18339815191526109f181610d55565b6108ea6000805160206117e183398151915283610bd4565b6000610a1481610d55565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610a4281610d55565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b609b54600090610488906001600160a01b03168330610ff1565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000805160206117c1833981519152610ac281610d55565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610b0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b309190611602565b610b4d57604051634f3bd42760e01b815260040160405180910390fd5b6000610b598684610dfc565b60985460995460405163197a393d60e21b81529293506001600160a01b03808516936365e8e4f493610b98938b93918216929116908a90600401611674565b600060405180830381600087803b158015610bb257600080fd5b505af1158015610bc6573d6000803e3d6000fd5b505050506106078186610e99565b600082815260656020526040902060010154610bef81610d55565b61082c83836110d3565b6000805160206117e1833981519152610c1181610d55565b609a54600090610c2a906001600160a01b031684610dfc565b60985460995460405163197a393d60e21b81529293506001600160a01b03808516936365e8e4f493610c69933393918216929116908a90600401611674565b600060405180830381600087803b158015610c8357600080fd5b505af1158015610c97573d6000803e3d6000fd5b505050506107798133610e99565b60978181548110610cb557600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff16610d495760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610527565b565b6108ea828261104d565b610d5f813361113a565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b038116610df75760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b6044820152606401610527565b919050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b0381166104885760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c65640000000000000000006044820152606401610527565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c90610f6f9085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b158015610f8957600080fd5b505af1158015610f9d573d6000803e3d6000fd5b50505050609d60008154610fb0906116c8565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6110578282610a7f565b6108ea5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561108f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6110dd8282610a7f565b156108ea5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6111448282610a7f565b6108ea5761115181611193565b61115c8360206111a5565b60405160200161116d9291906116e1565b60408051601f198184030181529082905262461bcd60e51b825261052791600401611756565b60606104886001600160a01b03831660145b606060006111b4836002611769565b6111bf906002611780565b67ffffffffffffffff8111156111d7576111d76114b4565b6040519080825280601f01601f191660200182016040528015611201576020820181803683370190505b509050600360fc1b8160008151811061121c5761121c611793565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061124b5761124b611793565b60200101906001600160f81b031916908160001a905350600061126f846002611769565b61127a906001611780565b90505b60018111156112f2576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106112ae576112ae611793565b1a60f81b8282815181106112c4576112c4611793565b60200101906001600160f81b031916908160001a90535060049490941c936112eb816117a9565b905061127d565b5083156113415760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610527565b9392505050565b60006020828403121561135a57600080fd5b81356001600160e01b03198116811461134157600080fd5b80356001600160a01b0381168114610df757600080fd5b600080600080600060a086880312156113a157600080fd5b6113aa86611372565b94506113b860208701611372565b93506113c660408701611372565b92506113d460608701611372565b91506113e260808701611372565b90509295509295909350565b6000806040838503121561140157600080fd5b61140a83611372565b946020939093013593505050565b60006020828403121561142a57600080fd5b5035919050565b6000806040838503121561144457600080fd5b8235915061145460208401611372565b90509250929050565b60006020828403121561146f57600080fd5b61134182611372565b60008060006060848603121561148d57600080fd5b61149684611372565b92506114a460208501611372565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126114db57600080fd5b813567ffffffffffffffff808211156114f6576114f66114b4565b604051601f8301601f19908116603f0116810190828211818310171561151e5761151e6114b4565b8160405283815286602085880101111561153757600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561156d57600080fd5b61157685611372565b935061158460208601611372565b9250604085013567ffffffffffffffff8111156115a057600080fd5b6115ac878288016114ca565b949793965093946060013593505050565b600080604083850312156115d057600080fd5b823567ffffffffffffffff8111156115e757600080fd5b6115f3858286016114ca565b95602094909401359450505050565b60006020828403121561161457600080fd5b8151801515811461134157600080fd5b60005b8381101561163f578181015183820152602001611627565b50506000910152565b60008151808452611660816020860160208601611624565b601f01601f19169290920160200192915050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190526000906116a890830184611648565b9695505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016116da576116da6116b2565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611719816017850160208801611624565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161174a816028840160208801611624565b01602801949350505050565b6020815260006113416020830184611648565b8082028115828204841417610488576104886116b2565b80820180821115610488576104886116b2565b634e487b7160e01b600052603260045260246000fd5b6000816117b8576117b86116b2565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220e8261c01885e610fa152a11d1ee93f6170146b932119b0773109f6e03291865064736f6c63430008130033", + "nonce": "0x24", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xc5d0f1bd7085b869e13b8987d9cd75607a20720d4143e260b1da82c440409366", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x539B73c830FC5A1b133E620d5324CddA8E258BEe", + "function": null, + "arguments": [ + "0x718C9494Cf206568fe4465B30C78bc5Ddcc12689", + "0x305D807d22070DfFF295f5575eCD354f72c2eB76", + "0x1459457a0000000000000000000000006e33ca04ec976b09291d9a470f7a88f3219b3abf00000000000000000000000048254cec35d0bf845c877d5903d04b9643077be1000000000000000000000000c5e5baf5d09f92edebcc5fa43cf79aa8e53fd8f300000000000000000000000063c18a5f329a7be8975930e188655534a3ffa045000000000000000000000000e809751f9b135c63dc49f2ba6d0a11a183420b95" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xeb67f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000718c9494cf206568fe4465b30c78bc5ddcc12689000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb76000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a41459457a0000000000000000000000006e33ca04ec976b09291d9a470f7a88f3219b3abf00000000000000000000000048254cec35d0bf845c877d5903d04b9643077be1000000000000000000000000c5e5baf5d09f92edebcc5fa43cf79aa8e53fd8f300000000000000000000000063c18a5f329a7be8975930e188655534a3ffa045000000000000000000000000e809751f9b135c63dc49f2ba6d0a11a183420b9500000000000000000000000000000000000000000000000000000000", + "nonce": "0x25", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x8e1d3d3a3c51888f811f7a6ee28942de460f7f50134c3529bd15a13a5dbb48ae", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x6e33CA04ec976B09291d9a470F7a88f3219B3abf", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x6e33ca04ec976b09291d9a470f7a88f3219b3abf", + "gas": "0x14fbd", + "value": "0x0", + "data": "0x2f2ff15ddfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee27000000000000000000000000539b73c830fc5a1b133e620d5324cdda8e258bee", + "nonce": "0x26", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xb45bc7313841b7b8e38332194f3663c443ac15e5a7f857f38fa7d7a3fc232da5", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x539B73c830FC5A1b133E620d5324CddA8E258BEe", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x539b73c830fc5a1b133e620d5324cdda8e258bee", + "gas": "0x14fcb", + "value": "0x0", + "data": "0x2f2ff15d2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "nonce": "0x27", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xdeeaa33929ba6dd74be2e83d7f39c56851eb503001f91f13baf360c44d4fe1ac", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x48254cEc35d0Bf845c877d5903d04B9643077bE1", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x48254cec35d0bf845c877d5903d04b9643077be1", + "gas": "0x1213a", + "value": "0x0", + "data": "0x7adaeebe000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "nonce": "0x28", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [], + "libraries": [], + "pending": [ + "0x93eb1e534b0610b9bf62bce9c1ff762f01b08affc26d94baac78ce72b10b6a17", + "0x4ab8929fb10fe306c89f4c6985b48aa04bc98ddb683c86d0995ab9fe216442bd", + "0xdd48533298d4b7e8bb518eae8992de96792719630564545a4755a197f444bb2c", + "0x4e5d9576e77720a7dbdd0b19de8f936d0d2087a48546fcd5149fa02c66e8cf10", + "0xc3d2428463cc787d8ba9085b2f366babc63763a8436a8d655d0bb88b5b89135a", + "0xda47f7c35576e54ee65ff025df3b7987619faf0da7b40050b3175925dc06cbbf", + "0x381f7556bf3b2bb0793dcf7c2ed10ce6952829f51867e4386a937b5a7d652a90", + "0x3cd7be1819bb0603879cf0c050384d1cf7d8ac2944b661f265b1383a2038687c", + "0xc5d0f1bd7085b869e13b8987d9cd75607a20720d4143e260b1da82c440409366", + "0x8e1d3d3a3c51888f811f7a6ee28942de460f7f50134c3529bd15a13a5dbb48ae", + "0xb45bc7313841b7b8e38332194f3663c443ac15e5a7f857f38fa7d7a3fc232da5", + "0xdeeaa33929ba6dd74be2e83d7f39c56851eb503001f91f13baf360c44d4fe1ac" + ], + "returns": {}, + "timestamp": 1698150793, + "chain": 5, + "multi": false, + "commit": "9a7b2c3" +} \ No newline at end of file diff --git a/broadcast/deploy-platform.s.sol/5/run-1698150824.json b/broadcast/deploy-platform.s.sol/5/run-1698150824.json new file mode 100644 index 0000000..2636711 --- /dev/null +++ b/broadcast/deploy-platform.s.sol/5/run-1698150824.json @@ -0,0 +1,588 @@ +{ + "transactions": [ + { + "hash": "0x93eb1e534b0610b9bf62bce9c1ff762f01b08affc26d94baac78ce72b10b6a17", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0xC5e5baF5D09f92edebcC5fA43CF79aa8E53FD8f3", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x3251ab", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612c7380620000f46000396000f3fe60806040526004361061020f5760003560e01c806370a0823111610118578063a1db9782116100a0578063d5abeb011161006f578063d5abeb0114610622578063de7ecf8714610638578063e985e9c51461064e578063f2fde38b1461066e578063fe325e961461068e57600080fd5b8063a1db9782146105af578063a22cb465146105cf578063b88d4fde146105ef578063c87b56dd1461060257600080fd5b806384a0c766116100e757806384a0c7661461051c5780638c72c54e1461053c5780638da5cb5b1461055c5780639182ba971461057a57806395d89b411461059a57600080fd5b806370a08231146104ad578063715018a6146104cd578063731133e9146104e2578063754b377c146104f557600080fd5b806342842e0e1161019b57806365e8e4f41161016a57806365e8e4f4146103f557806366748e98146104155780636cc82b841461044d5780636dbdaae61461046d5780636f8b44b01461048d57600080fd5b806342842e0e1461036e5780634b1022621461038157806355f804b3146103b55780636352211e146103d557600080fd5b806318160ddd116101e257806318160ddd146102b857806323b872dd146102db5780632a778c9b146102ee5780632e37eef6146103045780634128541c1461034e57600080fd5b806301ffc9a71461021457806306fdde0314610249578063081812fc1461026b578063095ea7b3146102a3575b600080fd5b34801561022057600080fd5b5061023461022f3660046121e8565b6106a3565b60405190151581526020015b60405180910390f35b34801561025557600080fd5b5061025e6106b4565b6040516102409190612255565b34801561027757600080fd5b5061028b610286366004612268565b61074f565b6040516001600160a01b039091168152602001610240565b6102b66102b1366004612296565b61079c565b005b3480156102c457600080fd5b506102cd6107ac565b604051908152602001610240565b6102b66102e93660046122c2565b6107cc565b3480156102fa57600080fd5b506102cd60685481565b34801561031057600080fd5b5061032461031f366004612268565b6109d0565b6040805195865260208601949094529284019190915260608301521515608082015260a001610240565b34801561035a57600080fd5b5060655461028b906001600160a01b031681565b6102b661037c3660046122c2565b610a14565b34801561038d57600080fd5b506102cd7f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156103c157600080fd5b506102b66103d036600461234b565b610a34565b3480156103e157600080fd5b5061028b6103f0366004612268565b610a49565b34801561040157600080fd5b506102b6610410366004612417565b610a54565b34801561042157600080fd5b506102cd610430366004612296565b606c60209081526000928352604080842090915290825290205481565b34801561045957600080fd5b5060665461028b906001600160a01b031681565b34801561047957600080fd5b506102b6610488366004612268565b610cd9565b34801561049957600080fd5b506102b66104a8366004612268565b610ce6565b3480156104b957600080fd5b506102cd6104c836600461249f565b610d1b565b3480156104d957600080fd5b506102b6610d83565b6102b66104f03660046124bc565b610d97565b34801561050157600080fd5b5061050a600181565b60405160ff9091168152602001610240565b34801561052857600080fd5b506102b6610537366004612525565b610fbe565b34801561054857600080fd5b5060675461028b906001600160a01b031681565b34801561056857600080fd5b506033546001600160a01b031661028b565b34801561058657600080fd5b506102b66105953660046125aa565b611003565b3480156105a657600080fd5b5061025e6111ca565b3480156105bb57600080fd5b506102b66105ca366004612296565b611206565b3480156105db57600080fd5b506102b66105ea36600461262c565b61127f565b6102b66105fd366004612665565b6112fc565b34801561060e57600080fd5b5061025e61061d366004612268565b611346565b34801561062e57600080fd5b506102cd606d5481565b34801561064457600080fd5b506102cd60695481565b34801561065a57600080fd5b506102346106693660046126b8565b6114a1565b34801561067a57600080fd5b506102b661068936600461249f565b6114de565b34801561069a57600080fd5b506102b6611557565b60006106ae82611729565b92915050565b60606106be611777565b60020180546106cc906126e6565b80601f01602080910402602001604051908101604052809291908181526020018280546106f8906126e6565b80156107455780601f1061071a57610100808354040283529160200191610745565b820191906000526020600020905b81548152906001019060200180831161072857829003601f168201915b5050505050905090565b600061075a8261179b565b610777576040516333d1c03960e21b815260040160405180910390fd5b61077f611777565b60009283526006016020525060409020546001600160a01b031690565b6107a8828260016117e4565b5050565b600060016107b8611777565b600101546107c4611777565b540303919050565b60006107d782611899565b9050836001600160a01b0316816001600160a01b03161461080a5760405162a1148160e81b815260040160405180910390fd5b60008061081684611946565b9150915061083b81876108263390565b6001600160a01b039081169116811491141790565b6108665761084986336114a1565b61086657604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b03851661088d57604051633a954ecd60e21b815260040160405180910390fd5b61089a868686600161196e565b80156108a557600082555b6108ad611777565b6001600160a01b03871660009081526005919091016020526040902080546000190190556108d9611777565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610910611777565b60008681526004919091016020526040812091909155600160e11b84169003610986576001840161093f611777565b60008281526004919091016020526040812054900361098457610960611777565b5481146109845783610970611777565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45b505050505050565b606b81815481106109e057600080fd5b6000918252602090912060059091020180546001820154600283015460038401546004909401549294509092909160ff1685565b610a2f838383604051806020016040528060008152506112fc565b505050565b610a3c6119ff565b606a610a2f828483612760565b60006106ae82611899565b600080516020612c1e83398151915254610100900460ff16610a8957600080516020612c1e8339815191525460ff1615610a8d565b303b155b610b045760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b600080516020612c1e83398151915254610100900460ff16158015610b4057600080516020612c1e833981519152805461ffff19166101011790555b600054610100900460ff1615808015610b605750600054600160ff909116105b80610b7a5750303b158015610b7a575060005460ff166001145b610bdd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610afb565b6000805460ff191660011790558015610c00576000805461ff0019166101001790555b610c198360405180602001604052806000815250611a59565b610c21611a97565b610c2a86611ac6565b6000606855606580546001600160a01b038088166001600160a01b0319928316179092556066805487841690831617905560678054928916929091169190911790558015610cb2576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610cd257600080516020612c1e833981519152805461ff00191690555b5050505050565b610ce16119ff565b606955565b610cee6119ff565b610cf6611b18565b811015610d1657604051632627b42d60e11b815260040160405180910390fd5b606d55565b60006001600160a01b038216610d44576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03610d54611777565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b610d8b6119ff565b610d956000611ac6565b565b610da084611b2b565b610dbd576040516332f7a9d760e21b815260040160405180910390fd5b6000606b8581548110610dd257610dd261281f565b60009182526020918290206040805160a0810182526005909302909101805483526001810154938301939093526002830154908201526003820154606082015260049091015460ff1615156080820152606d5490915084610e31611b18565b610e3b919061284b565b1115610e5a576040516322eb5e9560e21b815260040160405180910390fd5b8060800151610ef9576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490610e9b90899030908a908990899060040161285e565b602060405180830381865afa158015610eb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edc91906128b2565b610ef9576040516352c973a760e01b815260040160405180910390fd5b60608101516001600160a01b0387166000908152606c60209081526040808320898452909152902054610f2d90869061284b565b1115610f4c57604051631d66b65960e11b815260040160405180910390fd5b838160400151610f5c91906128cf565b3414610f7b576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0386166000908152606c6020908152604080832088845290915281208054869290610fae90849061284b565b909155506109c890508685611bd2565b610fc66119ff565b606d87905586851115610fec57604051632627b42d60e11b815260040160405180910390fd5b610ffa868686868686611d1a565b50505050505050565b61100b6119ff565b606b541561101f5761101f606b600061217d565b600081815b818110156111905760008585838181106110405761104061281f565b905060a0020180360381019061105691906128e6565b9050838160000151108061106e575060208101518151115b1561108c57604051632627b42d60e11b815260040160405180910390fd5b606b805460018101825560009190915281517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b4600590920291820181905560208301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b583015560408301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b683015560608301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b78301556080909201517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b8909101805460ff191691151591909117905592506111898161295b565b9050611024565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6060606854600014611203576111e1606854611e32565b6040516020016111f19190612974565b60405160208183030381529060405290505b90565b61120e6119ff565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af115801561125b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a2f91906128b2565b80611288611777565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113078484846107cc565b6001600160a01b0383163b156113405761132384848484611ec4565b611340576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b60606113518261179b565b61136e57604051632627b42d60e11b815260040160405180910390fd5b6000611378611faf565b9050805160000361139a5760405180602001604052806000815250915061149b565b60408051600180825281830190925260009160208201818036833701905050905081600183516113ca919061299e565b815181106113da576113da61281f565b602001015160f81c60f81b816000815181106113f8576113f861281f565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161144891906129b1565b6040516020818303038152906040528051906020012003611494578261146d86611fbe565b60405160200161147e9291906129cd565b6040516020818303038152906040529350611498565b8293505b50505b50919050565b60006114ab611777565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6114e66119ff565b6001600160a01b03811661154b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610afb565b61155481611ac6565b50565b61155f6119ff565b60655460675460685460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156115b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115dd91906129fc565b90925090506001600160a01b03821661160957604051632627b42d60e11b815260040160405180910390fd5b47600061271061161984846128cf565b6116239190612a2a565b90506000611631828461299e565b905080156116af576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611686576040519150601f19603f3d011682016040523d82523d6000602084013e61168b565b606091505b50509050806116ad57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610cd2576067546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611702576040519150601f19603f3d011682016040523d82523d6000602084013e611707565b606091505b50509050806109c857604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b03198316148061175a57506380ac58cd60e01b6001600160e01b03198316145b806106ae5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b6000816001111580156117b557506117b1611777565b5482105b80156106ae5750600160e01b6117c9611777565b60008481526004919091016020526040902054161592915050565b60006117ef83610a49565b9050811561182e57336001600160a01b0382161461182e5761181181336114a1565b61182e576040516367d9dca160e11b815260040160405180910390fd5b83611837611777565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b60008160011161192d576118ab611777565b600083815260049190910160205260408120549150600160e01b8216900361192d5780600003611928576118dd611777565b5482106118fd57604051636f96cda160e11b815260040160405180910390fd5b611905611777565b6000199092016000818152600493909301602052604090922054905080156118fd575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611953611777565b60009485526006016020525050604090912080549092909150565b6069541561134057606554606754606854604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156119e157600080fd5b505af11580156119f5573d6000803e3d6000fd5b5050505050505050565b6033546001600160a01b03163314610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610afb565b600080516020612c1e83398151915254610100900460ff16611a8d5760405162461bcd60e51b8152600401610afb90612a4c565b6107a88282612002565b600054610100900460ff16611abe5760405162461bcd60e51b8152600401610afb90612aa0565b610d95612075565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006001611b24611777565b5403919050565b606b546000908210611b5057604051632627b42d60e11b815260040160405180910390fd5b6000606b8381548110611b6557611b6561281f565b60009182526020918290206040805160a08101825260059093029091018054808452600182015494840194909452600281015491830191909152600381015460608301526004015460ff161515608082015291504210801590611bcb5750428160200151115b9392505050565b6000611bdc611777565b5490506000829003611c015760405163b562e8dd60e01b815260040160405180910390fd5b611c0e600084838561196e565b680100000000000000018202611c22611777565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717611c5d611777565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b818114611ce757808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101611caf565b5081600003611d0857604051622e076360e81b815260040160405180910390fd5b80611d11611777565b5550610a2f9050565b60685415611d3b576040516302d1671b60e41b815260040160405180910390fd5b85158015611d5157506001600160a01b03831615155b80611d6d57506001600160a01b038316158015611d6d57508515155b15611d8b57604051632627b42d60e11b815260040160405180910390fd5b60655460675460405163ae98d85760e01b81526001600160a01b03918216600482015285821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015611de8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0c9190612aeb565b6068556069869055606a611e21828483612760565b5084156109c8576109c88486611bd2565b60606000611e3f836120a5565b60010190506000816001600160401b03811115611e5e57611e5e61238c565b6040519080825280601f01601f191660200182016040528015611e88576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611e9257509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290611ef9903390899088908890600401612b04565b6020604051808303816000875af1925050508015611f34575060408051601f3d908101601f19168201909252611f3191810190612b41565b60015b611f92573d808015611f62576040519150601f19603f3d011682016040523d82523d6000602084013e611f67565b606091505b508051600003611f8a576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606a80546106cc906126e6565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a900480611fd85750819003601f19909101908152919050565b600080516020612c1e83398151915254610100900460ff166120365760405162461bcd60e51b8152600401610afb90612a4c565b8161203f611777565b6002019061204d9082612b5e565b5080612057611777565b600301906120659082612b5e565b506001612070611777565b555050565b600054610100900460ff1661209c5760405162461bcd60e51b8152600401610afb90612aa0565b610d9533611ac6565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106120e45772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612110576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061212e57662386f26fc10000830492506010015b6305f5e1008310612146576305f5e100830492506008015b612710831061215a57612710830492506004015b6064831061216c576064830492506002015b600a83106106ae5760010192915050565b508054600082556005029060005260206000209081019061155491905b808211156121ce5760008082556001820181905560028201819055600382015560048101805460ff1916905560050161219a565b5090565b6001600160e01b03198116811461155457600080fd5b6000602082840312156121fa57600080fd5b8135611bcb816121d2565b60005b83811015612220578181015183820152602001612208565b50506000910152565b60008151808452612241816020860160208601612205565b601f01601f19169290920160200192915050565b602081526000611bcb6020830184612229565b60006020828403121561227a57600080fd5b5035919050565b6001600160a01b038116811461155457600080fd5b600080604083850312156122a957600080fd5b82356122b481612281565b946020939093013593505050565b6000806000606084860312156122d757600080fd5b83356122e281612281565b925060208401356122f281612281565b929592945050506040919091013590565b60008083601f84011261231557600080fd5b5081356001600160401b0381111561232c57600080fd5b60208301915083602082850101111561234457600080fd5b9250929050565b6000806020838503121561235e57600080fd5b82356001600160401b0381111561237457600080fd5b61238085828601612303565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b03808411156123bc576123bc61238c565b604051601f8501601f19908116603f011681019082821181831017156123e4576123e461238c565b816040528093508581528686860111156123fd57600080fd5b858560208301376000602087830101525050509392505050565b6000806000806080858703121561242d57600080fd5b843561243881612281565b9350602085013561244881612281565b9250604085013561245881612281565b915060608501356001600160401b0381111561247357600080fd5b8501601f8101871361248457600080fd5b612493878235602084016123a2565b91505092959194509250565b6000602082840312156124b157600080fd5b8135611bcb81612281565b6000806000806000608086880312156124d457600080fd5b85356124df81612281565b9450602086013593506040860135925060608601356001600160401b0381111561250857600080fd5b61251488828901612303565b969995985093965092949392505050565b600080600080600080600060c0888a03121561254057600080fd5b873596506020880135955060408801359450606088013561256081612281565b9350608088013561257081612281565b925060a08801356001600160401b0381111561258b57600080fd5b6125978a828b01612303565b989b979a50959850939692959293505050565b600080602083850312156125bd57600080fd5b82356001600160401b03808211156125d457600080fd5b818501915085601f8301126125e857600080fd5b8135818111156125f757600080fd5b86602060a08302850101111561260c57600080fd5b60209290920196919550909350505050565b801515811461155457600080fd5b6000806040838503121561263f57600080fd5b823561264a81612281565b9150602083013561265a8161261e565b809150509250929050565b6000806000806080858703121561267b57600080fd5b843561268681612281565b9350602085013561269681612281565b92506040850135915060608501356001600160401b0381111561247357600080fd5b600080604083850312156126cb57600080fd5b82356126d681612281565b9150602083013561265a81612281565b600181811c908216806126fa57607f821691505b60208210810361149b57634e487b7160e01b600052602260045260246000fd5b601f821115610a2f57600081815260208120601f850160051c810160208610156127415750805b601f850160051c820191505b818110156109c85782815560010161274d565b6001600160401b038311156127775761277761238c565b61278b8361278583546126e6565b8361271a565b6000601f8411600181146127bf57600085156127a75750838201355b600019600387901b1c1916600186901b178355610cd2565b600083815260209020601f19861690835b828110156127f057868501358255602094850194600190920191016127d0565b508682101561280d5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156106ae576106ae612835565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b6000602082840312156128c457600080fd5b8151611bcb8161261e565b80820281158282048414176106ae576106ae612835565b600060a082840312156128f857600080fd5b60405160a081018181106001600160401b038211171561291a5761291a61238c565b806040525082358152602083013560208201526040830135604082015260608301356060820152608083013561294f8161261e565b60808201529392505050565b60006001820161296d5761296d612835565b5060010190565b6120a160f11b815260008251612991816002850160208701612205565b9190910160020192915050565b818103818111156106ae576106ae612835565b600082516129c3818460208701612205565b9190910192915050565b600083516129df818460208801612205565b8351908301906129f3818360208801612205565b01949350505050565b60008060408385031215612a0f57600080fd5b8251612a1a81612281565b6020939093015192949293505050565b600082612a4757634e487b7160e01b600052601260045260246000fd5b500490565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600060208284031215612afd57600080fd5b5051919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612b3790830184612229565b9695505050505050565b600060208284031215612b5357600080fd5b8151611bcb816121d2565b81516001600160401b03811115612b7757612b7761238c565b612b8b81612b8584546126e6565b8461271a565b602080601f831160018114612bc05760008415612ba85750858301515b600019600386901b1c1916600185901b1785556109c8565b600085815260208120601f198616915b82811015612bef57888601518255948401946001909101908401612bd0565b5085821015612c0d5787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220210ddb125bf4095c0abcbd659a3c60649af2f481592701c6da57632ae48d0ba164736f6c63430008130033", + "nonce": "0x1d", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x4ab8929fb10fe306c89f4c6985b48aa04bc98ddb683c86d0995ab9fe216442bd", + "transactionType": "CREATE", + "contractName": null, + "contractAddress": "0x63C18A5F329a7be8975930E188655534a3ffA045", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x3fd18d", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6138c080620000f46000396000f3fe6080604052600436106101c15760003560e01c806375794a3c116100f7578063c0c53b8b11610095578063f0c62a2f11610064578063f0c62a2f146105bd578063f242432a146105d0578063f2fde38b146105f0578063fe325e961461061057600080fd5b8063c0c53b8b14610521578063ca41ca6414610541578063e985e9c514610554578063ed01bda71461059d57600080fd5b80638da5cb5b116100d15780638da5cb5b146104a3578063a1db9782146104c1578063a22cb465146104e1578063ba0802ae1461050157600080fd5b806375794a3c1461040957806376744f501461041f5780638c72c54e1461048357600080fd5b80633b9ed29e116101645780634e1273f41161013e5780634e1273f4146103805780636cc82b84146103ad578063715018a6146103cd578063754b377c146103e257600080fd5b80633b9ed29e146102d85780633bd651a0146103165780634128541c1461034857600080fd5b80630f0e59ac116101a05780630f0e59ac14610256578063162094c4146102785780632eb2c2d61461029857806337da577c146102b857600080fd5b8062fdd58e146101c657806301ffc9a7146101f95780630e89341c14610229575b600080fd5b3480156101d257600080fd5b506101e66101e1366004612873565b610625565b6040519081526020015b60405180910390f35b34801561020557600080fd5b506102196102143660046128b5565b6106c0565b60405190151581526020016101f0565b34801561023557600080fd5b506102496102443660046128d9565b6106cb565b6040516101f09190612938565b34801561026257600080fd5b50610276610271366004612996565b610770565b005b34801561028457600080fd5b50610276610293366004612a76565b6107c6565b3480156102a457600080fd5b506102766102b3366004612b84565b6107ee565b3480156102c457600080fd5b506102766102d3366004612c31565b61083a565b3480156102e457600080fd5b506101e66102f3366004612c53565b60ce60209081526000938452604080852082529284528284209052825290205481565b34801561032257600080fd5b506103366103313660046128d9565b610889565b6040516101f096959493929190612c88565b34801561035457600080fd5b5060c954610368906001600160a01b031681565b6040516001600160a01b0390911681526020016101f0565b34801561038c57600080fd5b506103a061039b366004612cc5565b61094d565b6040516101f09190612dc2565b3480156103b957600080fd5b5060ca54610368906001600160a01b031681565b3480156103d957600080fd5b50610276610a76565b3480156103ee57600080fd5b506103f7600181565b60405160ff90911681526020016101f0565b34801561041557600080fd5b506101e660cc5481565b34801561042b57600080fd5b5061043f61043a366004612c31565b610a8a565b6040516101f09190600060a0820190508251825260208301516020830152604083015160408301526060830151606083015260808301511515608083015292915050565b34801561048f57600080fd5b5060cb54610368906001600160a01b031681565b3480156104af57600080fd5b506097546001600160a01b0316610368565b3480156104cd57600080fd5b506102766104dc366004612873565b610b1d565b3480156104ed57600080fd5b506102766104fc366004612de3565b610b96565b34801561050d57600080fd5b5061027661051c366004612e1c565b610ba5565b34801561052d57600080fd5b5061027661053c366004612e56565b610bb9565b61027661054f366004612ea1565b610d2f565b34801561056057600080fd5b5061021961056f366004612eec565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205460ff1690565b3480156105a957600080fd5b506102766105b8366004612f1a565b610fe2565b6102766105cb366004612f98565b611108565b3480156105dc57600080fd5b506102766105eb366004612fec565b611729565b3480156105fc57600080fd5b5061027661060b366004613054565b61176e565b34801561061c57600080fd5b506102766117e4565b60006001600160a01b0383166106955760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b60006106ba826119ba565b600081815260cd602052604090206006018054606091906106eb90613071565b80601f016020809104026020016040519081016040528092919081815260200182805461071790613071565b80156107645780601f1061073957610100808354040283529160200191610764565b820191906000526020600020905b81548152906001019060200180831161074757829003601f168201915b50505050509050919050565b610778611a0a565b8060005b818110156107c0576107b0848483818110610799576107996130ab565b90506020028101906107ab91906130c1565b611a64565b6107b9816130f7565b905061077c565b50505050565b6107ce611a0a565b600082815260cd602052604090206006016107e98282613156565b505050565b6001600160a01b03851633148061080a575061080a853361056f565b6108265760405162461bcd60e51b815260040161068c90613215565b6108338585858585611c4e565b5050505050565b610842611a0a565b600082815260cd602052604090206001015481101561087457604051632627b42d60e11b815260040160405180910390fd5b600091825260cd602052604090912060020155565b60cd6020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060060180546108ca90613071565b80601f01602080910402602001604051908101604052809291908181526020018280546108f690613071565b80156109435780601f1061091857610100808354040283529160200191610943565b820191906000526020600020905b81548152906001019060200180831161092657829003601f168201915b5050505050905086565b606081518351146109b25760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b606482015260840161068c565b600083516001600160401b038111156109cd576109cd6129d7565b6040519080825280602002602001820160405280156109f6578160200160208202803683370190505b50905060005b8451811015610a6e57610a41858281518110610a1a57610a1a6130ab565b6020026020010151858381518110610a3457610a346130ab565b6020026020010151610625565b828281518110610a5357610a536130ab565b6020908102919091010152610a67816130f7565b90506109fc565b509392505050565b610a7e611a0a565b610a886000611df3565b565b610abe6040518060a00160405280600081526020016000815260200160008152602001600081526020016000151581525090565b50600091825260cd602090815260408084209284526005909201815291819020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff161515608082015290565b610b25611a0a565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613263565b610ba1338383611e45565b5050565b610bad611a0a565b610bb681611a64565b50565b600054610100900460ff1615808015610bd95750600054600160ff909116105b80610bf35750303b158015610bf3575060005460ff166001145b610c565760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161068c565b6000805460ff191660011790558015610c79576000805461ff0019166101001790555b610c9160405180602001604052806000815250611f25565b610c99611f55565b610ca284611df3565b600160cc5560c980546001600160a01b038086166001600160a01b03199283161790925560ca805485841690831617905560cb80549287169290911691909117905580156107c0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b8035600090815260cd602052604081206003810154909103610d645760405163746a696560e01b815260040160405180910390fd5b6020808301356000908152600583018252604090819020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff1615156080820152610dc081611f84565b610ddd576040516332f7a9d760e21b815260040160405180910390fd5b816002015483604001358360010154610df69190613280565b1115610e15576040516322eb5e9560e21b815260040160405180910390fd5b8060800151610ec45760ca546001600160a01b031663af92c48a853086356020880135610e4560608a018a613293565b6040518763ffffffff1660e01b8152600401610e66969594939291906132d9565b602060405180830381865afa158015610e83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea79190613263565b610ec4576040516352c973a760e01b815260040160405180910390fd5b60608101516001600160a01b038516600090815260ce602090815260408083208735845282528083208288013584529091529081902054610f089186013590613280565b1115610f2757604051631d66b65960e11b815260040160405180910390fd5b82604001358160400151610f3b9190613335565b3414610f5a576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b038416600090815260ce60209081526040808320863584528252808320828701358452909152808220805491860135929091610f9e908490613280565b925050819055508260400135826001016000828254610fbd9190613280565b909155505060408051602081018252600081526107c091869186359187013590611fbe565b610fea611a0a565b600083815260cd602052604081209082815b818110156110c5576000868683818110611018576110186130ab565b905060a0020180360381019061102e919061334c565b90508381600001511080611046575060208101518151115b1561106457604051632627b42d60e11b815260040160405180910390fd5b60008281526005860160209081526040918290208351808255918401516001820155918301516002830155606083015160038301556080909201516004909101805460ff191691151591909117905592506110be816130f7565b9050610ffc565b50600383018490556040518681527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a1505050505050565b806000816001600160401b03811115611123576111236129d7565b60405190808252806020026020018201604052801561114c578160200160208202803683370190505b5090506000826001600160401b03811115611169576111696129d7565b604051908082528060200260200182016040528015611192578160200160208202803683370190505b509050600080805b858110156116e35760cd60008989848181106111b8576111b86130ab565b90506020028101906111ca91906133c1565b600001358152602001908152602001600020915081600301546000036112035760405163746a696560e01b815260040160405180910390fd5b60008260050160008a8a8581811061121d5761121d6130ab565b905060200281019061122f91906133c1565b6020908101358252818101929092526040908101600020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff1615156080820152905061128d81611f84565b6112aa576040516332f7a9d760e21b815260040160405180910390fd5b82600201548989848181106112c1576112c16130ab565b90506020028101906112d391906133c1565b6040013584600101546112e69190613280565b1115611305576040516322eb5e9560e21b815260040160405180910390fd5b806080015161141f5760ca546001600160a01b031663af92c48a8b308c8c87818110611333576113336130ab565b905060200281019061134591906133c1565b358d8d88818110611358576113586130ab565b905060200281019061136a91906133c1565b602001358e8e89818110611380576113806130ab565b905060200281019061139291906133c1565b6113a0906060810190613293565b6040518763ffffffff1660e01b81526004016113c1969594939291906132d9565b602060405180830381865afa1580156113de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114029190613263565b61141f576040516352c973a760e01b815260040160405180910390fd5b8060600151898984818110611436576114366130ab565b905060200281019061144891906133c1565b6001600160a01b038c16600090815260ce602052604080822092013591908c8c87818110611478576114786130ab565b905060200281019061148a91906133c1565b60000135815260200190815260200160002060008c8c878181106114b0576114b06130ab565b90506020028101906114c291906133c1565b602001358152602001908152602001600020546114df9190613280565b11156114fe57604051631d66b65960e11b815260040160405180910390fd5b888883818110611510576115106130ab565b905060200281019061152291906133c1565b6001600160a01b038b16600090815260ce602052604080822092013591908b8b86818110611552576115526130ab565b905060200281019061156491906133c1565b60000135815260200190815260200160002060008b8b8681811061158a5761158a6130ab565b905060200281019061159c91906133c1565b60200135815260200190815260200160002060008282546115bd9190613280565b9091555089905088838181106115d5576115d56130ab565b90506020028101906115e791906133c1565b604001358360010160008282546115fe9190613280565b909155508990508883818110611616576116166130ab565b905060200281019061162891906133c1565b60400135816040015161163b9190613335565b6116459085613280565b9350888883818110611659576116596130ab565b905060200281019061166b91906133c1565b60000135868381518110611681576116816130ab565b60200260200101818152505088888381811061169f5761169f6130ab565b90506020028101906116b191906133c1565b604001358583815181106116c7576116c76130ab565b6020908102919091010152506116dc816130f7565b905061119a565b50813414611704576040516318f4198360e21b815260040160405180910390fd5b61171f888585604051806020016040528060008152506120a9565b5050505050505050565b6001600160a01b0385163314806117455750611745853361056f565b6117615760405162461bcd60e51b815260040161068c90613215565b6108338585858585612204565b611776611a0a565b6001600160a01b0381166117db5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161068c565b610bb681611df3565b6117ec611a0a565b60c95460cb5460405163608ebea160e01b81526001600160a01b039182166004820152600060248201819052928392169063608ebea1906044016040805180830381865afa158015611842573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186691906133d7565b90925090506001600160a01b03821661189257604051632627b42d60e11b815260040160405180910390fd5b4760006127106118a28484613335565b6118ac9190613405565b905060006118ba8284613427565b90508015611938576000856001600160a01b03168260405160006040518083038185875af1925050503d806000811461190f576040519150601f19603f3d011682016040523d82523d6000602084013e611914565b606091505b505090508061193657604051631fa55c0760e11b815260040160405180910390fd5b505b81156108335760cb546040516000916001600160a01b03169084908381818185875af1925050503d806000811461198b576040519150601f19603f3d011682016040523d82523d6000602084013e611990565b606091505b50509050806119b257604051631fa55c0760e11b815260040160405180910390fd5b505050505050565b60006001600160e01b03198216636cdb3d1360e11b14806119eb57506001600160e01b031982166303a24d0760e21b145b806106ba57506301ffc9a760e01b6001600160e01b03198316146106ba565b6097546001600160a01b03163314610a885760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161068c565b6020810135158015611a8f57506000611a8360a0830160808401613054565b6001600160a01b031614155b80611ac057506000611aa760a0830160808401613054565b6001600160a01b0316148015611ac05750602081013515155b15611ade57604051632627b42d60e11b815260040160405180910390fd5b60cc54600090815260cd6020526040812060c95460cb549192916001600160a01b039182169163ae98d8579116611b1b60a0870160808801613054565b60cc546040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b96919061343a565b80835583356002840155602084013560048401559050611bb960a0840184613293565b6006840191611bc9919083613453565b50604083013515611c3457823560408401351115611bfa57604051632627b42d60e11b815260040160405180910390fd5b60408301356001830155611c34611c176080850160608601613054565b60cc54856040013560405180602001604052806000815250611fbe565b60cc8054906000611c44836130f7565b9190505550505050565b8151835114611c6f5760405162461bcd60e51b815260040161068c90613512565b6001600160a01b038416611c955760405162461bcd60e51b815260040161068c9061355a565b33611ca4818787878787612340565b60005b8451811015611d8d576000858281518110611cc457611cc46130ab565b602002602001015190506000858381518110611ce257611ce26130ab565b60209081029190910181015160008481526065835260408082206001600160a01b038e168352909352919091205490915081811015611d335760405162461bcd60e51b815260040161068c9061359f565b60008381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290611d72908490613280565b9250508190555050505080611d86906130f7565b9050611ca7565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611ddd9291906135e9565b60405180910390a46119b2818787878787612591565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b031603611eb85760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b606482015260840161068c565b6001600160a01b03838116600081815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b600054610100900460ff16611f4c5760405162461bcd60e51b815260040161068c90613617565b610bb6816126ec565b600054610100900460ff16611f7c5760405162461bcd60e51b815260040161068c90613617565b610a8861271c565b80516000908103611fa857604051632627b42d60e11b815260040160405180910390fd5b815142108015906106ba57505060200151421090565b6001600160a01b038416611fe45760405162461bcd60e51b815260040161068c90613662565b336000611ff08561274c565b90506000611ffd8561274c565b905061200e83600089858589612340565b60008681526065602090815260408083206001600160a01b038b16845290915281208054879290612040908490613280565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46120a083600089898989612797565b50505050505050565b6001600160a01b0384166120cf5760405162461bcd60e51b815260040161068c90613662565b81518351146120f05760405162461bcd60e51b815260040161068c90613512565b3361210081600087878787612340565b60005b845181101561219c5783818151811061211e5761211e6130ab565b60200260200101516065600087848151811061213c5761213c6130ab565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b0316815260200190815260200160002060008282546121849190613280565b90915550819050612194816130f7565b915050612103565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516121ed9291906135e9565b60405180910390a461083381600087878787612591565b6001600160a01b03841661222a5760405162461bcd60e51b815260040161068c9061355a565b3360006122368561274c565b905060006122438561274c565b9050612253838989858589612340565b60008681526065602090815260408083206001600160a01b038c168452909152902054858110156122965760405162461bcd60e51b815260040161068c9061359f565b60008781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906122d5908490613280565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612335848a8a8a8a8a612797565b505050505050505050565b8251600090815b818110156123a357600060cd6000888481518110612367576123676130ab565b6020026020010151815260200190815260200160002060040154111561239357612390836130f7565b92505b61239c816130f7565b9050612347565b506000826001600160401b038111156123be576123be6129d7565b6040519080825280602002602001820160405280156123e7578160200160208202803683370190505b5090506000836001600160401b03811115612404576124046129d7565b60405190808252806020026020018201604052801561242d578160200160208202803683370190505b5090506000805b8481101561251557600060cd60008b8481518110612454576124546130ab565b602002602001015181526020019081526020016000206004015411156125055760cd60008a838151811061248a5761248a6130ab565b60200260200101518152602001908152602001600020600001548483815181106124b6576124b66130ab565b6020026020010181815250508781815181106124d4576124d46130ab565b60200260200101518383815181106124ee576124ee6130ab565b6020908102919091010152612502826130f7565b91505b61250e816130f7565b9050612434565b5060c95460cb546040516365cb42dd60e11b81526001600160a01b039283169263cb9685ba92612552929116908e908e90899089906004016136a3565b600060405180830381600087803b15801561256c57600080fd5b505af1158015612580573d6000803e3d6000fd5b505050505050505050505050505050565b6001600160a01b0384163b156119b25760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906125d590899089908890889088906004016136e9565b6020604051808303816000875af1925050508015612610575060408051601f3d908101601f1916820190925261260d9181019061373b565b60015b6126bc5761261c613758565b806308c379a0036126555750612630613774565b8061263b5750612657565b8060405162461bcd60e51b815260040161068c9190612938565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e2d455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b606482015260840161068c565b6001600160e01b0319811663bc197c8160e01b146120a05760405162461bcd60e51b815260040161068c906137fd565b600054610100900460ff166127135760405162461bcd60e51b815260040161068c90613617565b610bb681612852565b600054610100900460ff166127435760405162461bcd60e51b815260040161068c90613617565b610a8833611df3565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612786576127866130ab565b602090810291909101015292915050565b6001600160a01b0384163b156119b25760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906127db9089908990889088908890600401613845565b6020604051808303816000875af1925050508015612816575060408051601f3d908101601f191682019092526128139181019061373b565b60015b6128225761261c613758565b6001600160e01b0319811663f23a6e6160e01b146120a05760405162461bcd60e51b815260040161068c906137fd565b6067610ba18282613156565b6001600160a01b0381168114610bb657600080fd5b6000806040838503121561288657600080fd5b82356128918161285e565b946020939093013593505050565b6001600160e01b031981168114610bb657600080fd5b6000602082840312156128c757600080fd5b81356128d28161289f565b9392505050565b6000602082840312156128eb57600080fd5b5035919050565b6000815180845260005b81811015612918576020818501810151868301820152016128fc565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006128d260208301846128f2565b60008083601f84011261295d57600080fd5b5081356001600160401b0381111561297457600080fd5b6020830191508360208260051b850101111561298f57600080fd5b9250929050565b600080602083850312156129a957600080fd5b82356001600160401b038111156129bf57600080fd5b6129cb8582860161294b565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b0381118282101715612a1257612a126129d7565b6040525050565b60006001600160401b03831115612a3257612a326129d7565b604051612a49601f8501601f1916602001826129ed565b809150838152848484011115612a5e57600080fd5b83836020830137600060208583010152509392505050565b60008060408385031215612a8957600080fd5b8235915060208301356001600160401b03811115612aa657600080fd5b8301601f81018513612ab757600080fd5b612ac685823560208401612a19565b9150509250929050565b60006001600160401b03821115612ae957612ae96129d7565b5060051b60200190565b600082601f830112612b0457600080fd5b81356020612b1182612ad0565b604051612b1e82826129ed565b83815260059390931b8501820192828101915086841115612b3e57600080fd5b8286015b84811015612b595780358352918301918301612b42565b509695505050505050565b600082601f830112612b7557600080fd5b6128d283833560208501612a19565b600080600080600060a08688031215612b9c57600080fd5b8535612ba78161285e565b94506020860135612bb78161285e565b935060408601356001600160401b0380821115612bd357600080fd5b612bdf89838a01612af3565b94506060880135915080821115612bf557600080fd5b612c0189838a01612af3565b93506080880135915080821115612c1757600080fd5b50612c2488828901612b64565b9150509295509295909350565b60008060408385031215612c4457600080fd5b50508035926020909101359150565b600080600060608486031215612c6857600080fd5b8335612c738161285e565b95602085013595506040909401359392505050565b86815285602082015284604082015283606082015282608082015260c060a08201526000612cb960c08301846128f2565b98975050505050505050565b60008060408385031215612cd857600080fd5b82356001600160401b0380821115612cef57600080fd5b818501915085601f830112612d0357600080fd5b81356020612d1082612ad0565b604051612d1d82826129ed565b83815260059390931b8501820192828101915089841115612d3d57600080fd5b948201945b83861015612d64578535612d558161285e565b82529482019490820190612d42565b96505086013592505080821115612d7a57600080fd5b50612ac685828601612af3565b600081518084526020808501945080840160005b83811015612db757815187529582019590820190600101612d9b565b509495945050505050565b6020815260006128d26020830184612d87565b8015158114610bb657600080fd5b60008060408385031215612df657600080fd5b8235612e018161285e565b91506020830135612e1181612dd5565b809150509250929050565b600060208284031215612e2e57600080fd5b81356001600160401b03811115612e4457600080fd5b820160c081850312156128d257600080fd5b600080600060608486031215612e6b57600080fd5b8335612e768161285e565b92506020840135612e868161285e565b91506040840135612e968161285e565b809150509250925092565b60008060408385031215612eb457600080fd5b8235612ebf8161285e565b915060208301356001600160401b03811115612eda57600080fd5b830160808186031215612e1157600080fd5b60008060408385031215612eff57600080fd5b8235612f0a8161285e565b91506020830135612e118161285e565b600080600060408486031215612f2f57600080fd5b8335925060208401356001600160401b0380821115612f4d57600080fd5b818601915086601f830112612f6157600080fd5b813581811115612f7057600080fd5b87602060a083028501011115612f8557600080fd5b6020830194508093505050509250925092565b600080600060408486031215612fad57600080fd5b8335612fb88161285e565b925060208401356001600160401b03811115612fd357600080fd5b612fdf8682870161294b565b9497909650939450505050565b600080600080600060a0868803121561300457600080fd5b853561300f8161285e565b9450602086013561301f8161285e565b9350604086013592506060860135915060808601356001600160401b0381111561304857600080fd5b612c2488828901612b64565b60006020828403121561306657600080fd5b81356128d28161285e565b600181811c9082168061308557607f821691505b6020821081036130a557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b6000823560be198336030181126130d757600080fd5b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b600060018201613109576131096130e1565b5060010190565b601f8211156107e957600081815260208120601f850160051c810160208610156131375750805b601f850160051c820191505b818110156119b257828155600101613143565b81516001600160401b0381111561316f5761316f6129d7565b6131838161317d8454613071565b84613110565b602080601f8311600181146131b857600084156131a05750858301515b600019600386901b1c1916600185901b1785556119b2565b600085815260208120601f198616915b828110156131e7578886015182559484019460019091019084016131c8565b50858210156132055787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252602e908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526d195c881bdc88185c1c1c9bdd995960921b606082015260800190565b60006020828403121561327557600080fd5b81516128d281612dd5565b808201808211156106ba576106ba6130e1565b6000808335601e198436030181126132aa57600080fd5b8301803591506001600160401b038211156132c457600080fd5b60200191503681900382131561298f57600080fd5b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905281018290526000828460c0840137600060c0848401015260c0601f19601f8501168301019050979650505050505050565b80820281158282048414176106ba576106ba6130e1565b600060a0828403121561335e57600080fd5b60405160a081018181106001600160401b0382111715613380576133806129d7565b80604052508235815260208301356020820152604083013560408201526060830135606082015260808301356133b581612dd5565b60808201529392505050565b60008235607e198336030181126130d757600080fd5b600080604083850312156133ea57600080fd5b82516133f58161285e565b6020939093015192949293505050565b60008261342257634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106ba576106ba6130e1565b60006020828403121561344c57600080fd5b5051919050565b6001600160401b0383111561346a5761346a6129d7565b61347e836134788354613071565b83613110565b6000601f8411600181146134b2576000851561349a5750838201355b600019600387901b1c1916600186901b178355610833565b600083815260209020601f19861690835b828110156134e357868501358255602094850194600190920191016134c3565b50868210156135005760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b6040815260006135fc6040830185612d87565b828103602084015261360e8185612d87565b95945050505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b6001600160a01b03868116825285811660208301528416604082015260a0606082018190526000906136d790830185612d87565b8281036080840152612cb98185612d87565b6001600160a01b0386811682528516602082015260a06040820181905260009061371590830186612d87565b82810360608401526137278186612d87565b90508281036080840152612cb981856128f2565b60006020828403121561374d57600080fd5b81516128d28161289f565b600060033d11156137715760046000803e5060005160e01c5b90565b600060443d10156137825790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156137b157505050505090565b82850191508151818111156137c95750505050505090565b843d87010160208285010111156137e35750505050505090565b6137f2602082860101876129ed565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061387f908301846128f2565b97965050505050505056fea2646970667358221220cf140f171ac2d5ea9a23d7d808cffff11645eee9fe1e63f3531c56345a29b58364736f6c63430008130033", + "nonce": "0x1e", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xdd48533298d4b7e8bb518eae8992de96792719630564545a4755a197f444bb2c", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0xe809751f9b135C63dc49f2Ba6D0a11A183420b95", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x28a433", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61239f80620000ee6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80638fd1101c11610104578063b81155b5116100a2578063df3d053b11610071578063df3d053b14610452578063ef1103d614610465578063f837232014610478578063fa3550671461048157600080fd5b8063b81155b5146103da578063cfc5a0c014610417578063d518b7ff1461042c578063d547741f1461043f57600080fd5b8063a217fddf116100de578063a217fddf14610383578063a626f5731461038b578063aa29f45e146103b4578063b08805a5146103c757600080fd5b80638fd1101c1461034a57806391d148541461035d5780639ab29f2b1461037057600080fd5b8063485cc9551161017157806378c5195e1161014b57806378c5195e146102fe57806387260f19146103115780638a69614e146103245780638c72c54e1461033757600080fd5b8063485cc955146102be5780636ce10ab6146102d1578063754b377c146102e457600080fd5b80632f2ff15d116101ad5780632f2ff15d1461026e57806336568abe146102835780633d695c521461029657806342f1e879146102a957600080fd5b806301ffc9a7146101d45780631d3b405a146101fc578063248a9ca31461023d575b600080fd5b6101e76101e2366004611a9a565b610494565b60405190151581526020015b60405180910390f35b61022561020a366004611ac4565b6098602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b61026061024b366004611ac4565b60009081526065602052604090206001015490565b6040519081526020016101f3565b61028161027c366004611af2565b6104cb565b005b610281610291366004611af2565b6104f5565b6102816102a4366004611b6d565b610578565b61026060008051602061234a83398151915281565b6102816102cc366004611bae565b6105bc565b6102816102df366004611bdc565b610718565b6102ec600181565b60405160ff90911681526020016101f3565b61026061030c366004611af2565b6107aa565b61028161031f366004611c1d565b6107d8565b610281610332366004611ac4565b61087b565b609754610225906001600160a01b031681565b610281610358366004611c88565b610888565b6101e761036b366004611af2565b6108d3565b61026061037e366004611af2565b6108fe565b610260600081565b610225610399366004611ac4565b6099602052600090815260409020546001600160a01b031681565b6102816103c2366004611af2565b610935565b6102816103d5366004611cce565b610957565b6103ed6103e8366004611ac4565b610979565b604080516001600160801b03948516815292841660208401529216918101919091526060016101f3565b61026060008051602061232a83398151915281565b61028161043a366004611cf0565b6109ae565b61028161044d366004611af2565b610a93565b610281610460366004611d92565b610ab8565b610281610473366004611dcb565b610b5c565b6102606103e881565b61028161048f366004611e16565b610bba565b60006001600160e01b03198216637965db0b60e01b14806104c557506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000828152606560205260409020600101546104e681610c03565b6104f08383610c0d565b505050565b6001600160a01b038116331461056a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6105748282610c93565b5050565b8060005b818110156105b6576105a684848381811061059957610599611e61565b9050602002013533610cfa565b6105af81611e8d565b905061057c565b50505050565b600054610100900460ff16158080156105dc5750600054600160ff909116105b806105f65750303b1580156105f6575060005460ff166001145b6106595760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610561565b6000805460ff19166001179055801561067c576000805461ff0019166101001790555b610684610d1e565b61068f600084610c0d565b61069a600033610c93565b6106b260008051602061234a83398151915283610c0d565b609780546001600160a01b0319166001600160a01b03851617905580156104f0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a1505050565b60008051602061234a83398151915261073081610c03565b60006107456001600160a01b03851684610d8b565b90508061076557604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260986020908152604080832080546001600160a01b039687166001600160a01b03199182161790915560999092529091208054929093169116179055565b6000828152609960205260408120546107ce906001600160a01b0316308585610eb0565b9695505050505050565b60008051602061232a8339815191526107f081610c03565b818460005b828110156108715760005b828110156108605761085089898381811061081d5761081d611e61565b9050602002013588888581811061083657610836611e61565b905060200201602081019061084b9190611ea6565b610cfa565b61085981611e8d565b9050610800565b5061086a81611e8d565b90506107f5565b5050505050505050565b6108858133610cfa565b50565b60008051602061234a8339815191526108a081610c03565b6108b685846108b16103e886611ec3565b610f5f565b6108cc84846108c76103e886611ec3565b611010565b5050505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600082815260996020526040812054610922906001600160a01b0316308585610eb0565b506001600160801b031695945050505050565b60008051602061232a83398151915261094d81610c03565b6104f08383610cfa565b60008051602061234a83398151915261096f81610c03565b6104f08383611066565b600081815260996020526040812054819081906109a0906001600160a01b031630866110e8565b919790965090945092505050565b60008051602061234a8339815191526109c681610c03565b838281146109e757604051632627b42d60e11b815260040160405180910390fd5b60005b81811015610a8857610a3589888884818110610a0857610a08611e61565b905060200201356103e8888886818110610a2457610a24611e61565b905060200201356108b19190611ec3565b610a7888888884818110610a4b57610a4b611e61565b905060200201356103e8888886818110610a6757610a67611e61565b905060200201356108c79190611ec3565b610a8181611e8d565b90506109ea565b505050505050505050565b600082815260656020526040902060010154610aae81610c03565b6104f08383610c93565b6000610ac381610c03565b81610b5257600084815260996020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610b2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b509190611eda565b505b6105b68484611066565b60008051602061232a833981519152610b7481610c03565b8260005b81811015610bb257610ba2868683818110610b9557610b95611e61565b9050602002013585610cfa565b610bab81611e8d565b9050610b78565b505050505050565b60008051602061232a833981519152610bd281610c03565b60005b828110156108cc57610bf38585858481811061083657610836611e61565b610bfc81611e8d565b9050610bd5565b610885813361118e565b610c1782826108d3565b6105745760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610c4f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610c9d82826108d3565b156105745760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000828152609960205260409020546104f0906001600160a01b03163084846111e7565b600054610100900460ff16610d895760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610561565b565b6000806000610d9985611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610dd757610dd7611ef7565b6040519080825280601f01601f191660200182016040528015610e01576020820181803683370190505b50604051602401610e1493929190611f5d565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610e5d93925090600401611f96565b6000604051808303816000875af1158015610e7c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ea49190810190611fdd565b50600195945050505050565b6000806000806000610ec1896114d9565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa158015610f28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4c91906120a5565b929c919b50995090975095505050505050565b6001600160a01b038316610f7257505050565b600082815260996020526040812054610f96906001600160a01b0316308587610eb0565b506001600160801b03169250505060008282610fb291906120f5565b11610fe157600083815260996020526040902054610fdb906001600160a01b031630858761163e565b506105b6565b6108cc8385610ff085856120f5565b6000878152609960205260409020546001600160a01b031692919061168c565b6001600160a01b03831661102357505050565b600082815260996020526040812054611047906001600160a01b0316308587610eb0565b506001600160801b0316925050506108cc83858484610ff09190612108565b60008281526099602052604081205461108a906001600160a01b0316308585611719565b506000848152609960205260409020549091506110b1906001600160a01b031684836117be565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910161070b565b60008060008060006110f9886114d9565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117c919061211b565b94509450945094505093509350935093565b61119882826108d3565b610574576111a5816118e6565b6111b08360206118f8565b6040516020016111c1929190612171565b60408051601f198184030181529082905262461bcd60e51b8252610561916004016121e6565b60008060006111f587611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b0381111561123557611235611ef7565b6040519080825280601f01601f19166020018201604052801561125f576020820181803683370190505b506040516024016112749594939291906121f9565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b03191682526112bd93925090600401611f96565b6000604051808303816000875af11580156112dc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113049190810190611fdd565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b0381166114a8576001600160a01b0382166113d757826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa1580156113b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d49190612239565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa15801561143b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061145f9190612239565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b0382166114be576114be612256565b6001600160a01b0381166114d4576114d4612256565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b0381166114a8576001600160a01b03821661159e57826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611577573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159b9190612239565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa158015611602573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116269190612239565b90506001600160a01b0382166114be576114be612256565b600080600061164c87611312565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b0381111561123557611235611ef7565b600080600061169a87611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b038111156116da576116da611ef7565b6040519080825280601f01601f191660200182016040528015611704576020820181803683370190505b5060405160240161127495949392919061226c565b6000806000611727876114d9565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa15801561178c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b091906122b3565b925092505094509492505050565b60008060006117cc86611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b0381111561180b5761180b611ef7565b6040519080825280601f01601f191660200182016040528015611835576020820181803683370190505b5060405160240161184994939291906122df565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261189293925090600401611f96565b6000604051808303816000875af11580156118b1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118d99190810190611fdd565b5060019695505050505050565b60606104c56001600160a01b03831660145b60606000611907836002611ec3565b611912906002612108565b6001600160401b0381111561192957611929611ef7565b6040519080825280601f01601f191660200182016040528015611953576020820181803683370190505b509050600360fc1b8160008151811061196e5761196e611e61565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061199d5761199d611e61565b60200101906001600160f81b031916908160001a90535060006119c1846002611ec3565b6119cc906001612108565b90505b6001811115611a44576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611a0057611a00611e61565b1a60f81b828281518110611a1657611a16611e61565b60200101906001600160f81b031916908160001a90535060049490941c93611a3d81612312565b90506119cf565b508315611a935760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610561565b9392505050565b600060208284031215611aac57600080fd5b81356001600160e01b031981168114611a9357600080fd5b600060208284031215611ad657600080fd5b5035919050565b6001600160a01b038116811461088557600080fd5b60008060408385031215611b0557600080fd5b823591506020830135611b1781611add565b809150509250929050565b60008083601f840112611b3457600080fd5b5081356001600160401b03811115611b4b57600080fd5b6020830191508360208260051b8501011115611b6657600080fd5b9250929050565b60008060208385031215611b8057600080fd5b82356001600160401b03811115611b9657600080fd5b611ba285828601611b22565b90969095509350505050565b60008060408385031215611bc157600080fd5b8235611bcc81611add565b91506020830135611b1781611add565b600080600060608486031215611bf157600080fd5b8335611bfc81611add565b92506020840135611c0c81611add565b929592945050506040919091013590565b60008060008060408587031215611c3357600080fd5b84356001600160401b0380821115611c4a57600080fd5b611c5688838901611b22565b90965094506020870135915080821115611c6f57600080fd5b50611c7c87828801611b22565b95989497509550505050565b60008060008060808587031215611c9e57600080fd5b8435611ca981611add565b93506020850135611cb981611add565b93969395505050506040820135916060013590565b60008060408385031215611ce157600080fd5b50508035926020909101359150565b60008060008060008060808789031215611d0957600080fd5b8635611d1481611add565b95506020870135611d2481611add565b945060408701356001600160401b0380821115611d4057600080fd5b611d4c8a838b01611b22565b90965094506060890135915080821115611d6557600080fd5b50611d7289828a01611b22565b979a9699509497509295939492505050565b801515811461088557600080fd5b600080600060608486031215611da757600080fd5b83359250602084013591506040840135611dc081611d84565b809150509250925092565b600080600060408486031215611de057600080fd5b83356001600160401b03811115611df657600080fd5b611e0286828701611b22565b9094509250506020840135611dc081611add565b600080600060408486031215611e2b57600080fd5b8335925060208401356001600160401b03811115611e4857600080fd5b611e5486828701611b22565b9497909650939450505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611e9f57611e9f611e77565b5060010190565b600060208284031215611eb857600080fd5b8135611a9381611add565b80820281158282048414176104c5576104c5611e77565b600060208284031215611eec57600080fd5b8151611a9381611d84565b634e487b7160e01b600052604160045260246000fd5b60005b83811015611f28578181015183820152602001611f10565b50506000910152565b60008151808452611f49816020860160208601611f0d565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090611f8d90830184611f31565b95945050505050565b6001600160a01b0383168152606060208201819052600090611fba90830184611f31565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b600060208284031215611fef57600080fd5b81516001600160401b038082111561200657600080fd5b818401915084601f83011261201a57600080fd5b81518181111561202c5761202c611ef7565b604051601f8201601f19908116603f0116810190838211818310171561205457612054611ef7565b8160405282815287602084870101111561206d57600080fd5b61207e836020830160208801611f0d565b979650505050505050565b80516001600160801b03811681146120a057600080fd5b919050565b600080600080608085870312156120bb57600080fd5b84516120c681611d84565b60208601519094506120d781611d84565b92506120e560408601612089565b6060959095015193969295505050565b818103818111156104c5576104c5611e77565b808201808211156104c5576104c5611e77565b6000806000806080858703121561213157600080fd5b845161213c81611d84565b935061214a60208601612089565b925061215860408601612089565b915061216660608601612089565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516121a9816017850160208801611f0d565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516121da816028840160208801611f0d565b01602801949350505050565b602081526000611a936020830184611f31565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061207e90830184611f31565b60006020828403121561224b57600080fd5b8151611a9381611add565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061207e90830184611f31565b600080604083850312156122c657600080fd5b825191506122d660208401612089565b90509250929050565b60018060a01b038516815263ffffffff841660208201528260408201526080606082015260006107ce6080830184611f31565b60008161232157612321611e77565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca264697066735822122092b0e50e4ae8020bc01793d015d9fc0503a0b339b20e0e5a4bd6ef82f54b2ec764736f6c63430008130033", + "nonce": "0x1f", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x4e5d9576e77720a7dbdd0b19de8f936d0d2087a48546fcd5149fa02c66e8cf10", + "transactionType": "CREATE", + "contractName": "ABVerifier", + "contractAddress": "0x370cE6635140Cf7d47e2b86e20A68736fE1A3f0C", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x16da46", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611366806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80637adaeebe116100ad578063cbc6512411610071578063cbc6512414610267578063ccac2c131461027a578063cfc5a0c01461028d578063d547741f146102b4578063ed9ec8c6146102c757600080fd5b80637adaeebe1461021357806391d1485414610226578063a217fddf14610239578063af92c48a14610241578063c4d66de81461025457600080fd5b806336568abe116100f457806336568abe146101bf5780633a774256146101d2578063437a0de9146101e55780634a96535b146101f8578063627cdcb91461020b57600080fd5b806301ffc9a7146101265780631180b5531461014e578063248a9ca3146101795780632f2ff15d146101aa575b600080fd5b610139610134366004610f66565b6102da565b60405190151581526020015b60405180910390f35b61016161015c366004610fac565b610311565b6040516001600160a01b039091168152602001610145565b61019c610187366004610fc7565b60009081526065602052604090206001015490565b604051908152602001610145565b6101bd6101b8366004610fe0565b61031c565b005b6101bd6101cd366004610fe0565b610346565b6101396101e036600461104e565b6103c9565b609754610161906001600160a01b031681565b6101bd610206366004610fac565b6104b0565b6101bd6104de565b6101bd610221366004610fac565b6104ff565b610139610234366004610fe0565b61052d565b61019c600081565b61013961024f3660046110a1565b610558565b6101bd610262366004610fac565b610661565b610139610275366004611119565b6107bf565b6101bd610288366004611188565b6108c0565b61019c7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b6101bd6102c2366004610fe0565b610919565b609854610161906001600160a01b031681565b60006001600160e01b03198216637965db0b60e01b148061030b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061030b8261093e565b60008281526065602052604090206001015461033781610970565b610341838361097d565b505050565b6001600160a01b03811633146103bb5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6103c58282610a03565b5050565b609a546040516001600160601b0319606086901b1660208201526034810191909152600090819060540160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061049684848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6098546001600160a01b0390811691161495945050505050565b60006104bb81610970565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006104e981610970565b609a600081546104f8906111c8565b9091555050565b600061050a81610970565b50609880546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000806105648761093e565b6040516001600160601b031960608b811b821660208401528a901b166034820152604881018890526068810187905290915060009060880160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061063f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6001600160a01b0316826001600160a01b031614925050509695505050505050565b600054610100900460ff16158080156106815750600054600160ff909116105b8061069b5750303b15801561069b575060005460ff166001145b6106fe5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016103b2565b6000805460ff191660011790558015610721576000805461ff0019166101001790555b6001600160a01b03821661074857604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b03841617905561076b610a8e565b610776600033610afb565b80156103c5576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6000806107cb8661093e565b6040516001600160601b031960608a811b8216602084015289901b1660348201526048810187905290915060009060680160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061089f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6001600160a01b0316826001600160a01b0316149250505095945050505050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e6108ea81610970565b506001600160a01b03918216600090815260996020526040902080546001600160a01b03191691909216179055565b60008281526065602052604090206001015461093481610970565b6103418383610a03565b6097546001600160a01b038281166000908152609960205260409020549181169116801561096a578091505b50919050565b61097a8133610b05565b50565b610987828261052d565b6103c55760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556109bf3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610a0d828261052d565b156103c55760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610a798585610b5e565b91509150610a8681610ba3565b509392505050565b600054610100900460ff16610af95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016103b2565b565b6103c5828261097d565b610b0f828261052d565b6103c557610b1c81610ced565b610b27836020610cff565b604051602001610b38929190611205565b60408051601f198184030181529082905262461bcd60e51b82526103b29160040161127a565b6000808251604103610b945760208301516040840151606085015160001a610b8887828585610ea2565b94509450505050610b9c565b506000905060025b9250929050565b6000816004811115610bb757610bb76112ad565b03610bbf5750565b6001816004811115610bd357610bd36112ad565b03610c205760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016103b2565b6002816004811115610c3457610c346112ad565b03610c815760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016103b2565b6003816004811115610c9557610c956112ad565b0361097a5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016103b2565b606061030b6001600160a01b03831660145b60606000610d0e8360026112c3565b610d199060026112da565b67ffffffffffffffff811115610d3157610d316112ed565b6040519080825280601f01601f191660200182016040528015610d5b576020820181803683370190505b509050600360fc1b81600081518110610d7657610d76611303565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610da557610da5611303565b60200101906001600160f81b031916908160001a9053506000610dc98460026112c3565b610dd49060016112da565b90505b6001811115610e4c576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610e0857610e08611303565b1a60f81b828281518110610e1e57610e1e611303565b60200101906001600160f81b031916908160001a90535060049490941c93610e4581611319565b9050610dd7565b508315610e9b5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016103b2565b9392505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610ed95750600090506003610f5d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610f2d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610f5657600060019250925050610f5d565b9150600090505b94509492505050565b600060208284031215610f7857600080fd5b81356001600160e01b031981168114610e9b57600080fd5b80356001600160a01b0381168114610fa757600080fd5b919050565b600060208284031215610fbe57600080fd5b610e9b82610f90565b600060208284031215610fd957600080fd5b5035919050565b60008060408385031215610ff357600080fd5b8235915061100360208401610f90565b90509250929050565b60008083601f84011261101e57600080fd5b50813567ffffffffffffffff81111561103657600080fd5b602083019150836020828501011115610b9c57600080fd5b60008060006040848603121561106357600080fd5b61106c84610f90565b9250602084013567ffffffffffffffff81111561108857600080fd5b6110948682870161100c565b9497909650939450505050565b60008060008060008060a087890312156110ba57600080fd5b6110c387610f90565b95506110d160208801610f90565b94506040870135935060608701359250608087013567ffffffffffffffff8111156110fb57600080fd5b61110789828a0161100c565b979a9699509497509295939492505050565b60008060008060006080868803121561113157600080fd5b61113a86610f90565b945061114860208701610f90565b935060408601359250606086013567ffffffffffffffff81111561116b57600080fd5b6111778882890161100c565b969995985093965092949392505050565b6000806040838503121561119b57600080fd5b6111a483610f90565b915061100360208401610f90565b634e487b7160e01b600052601160045260246000fd5b6000600182016111da576111da6111b2565b5060010190565b60005b838110156111fc5781810151838201526020016111e4565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161123d8160178501602088016111e1565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161126e8160288401602088016111e1565b01602801949350505050565b60208152600082518060208401526112998160408501602087016111e1565b601f01601f19169190910160400192915050565b634e487b7160e01b600052602160045260246000fd5b808202811582820484141761030b5761030b6111b2565b8082018082111561030b5761030b6111b2565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081611328576113286111b2565b50600019019056fea2646970667358221220f66200a430c167ad4f1ae625723f35c23be8862c0bf9cba0bfccd975c30aafc764736f6c63430008130033", + "nonce": "0x20", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xc3d2428463cc787d8ba9085b2f366babc63763a8436a8d655d0bb88b5b89135a", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x48254cEc35d0Bf845c877d5903d04B9643077bE1", + "function": null, + "arguments": [ + "0x370cE6635140Cf7d47e2b86e20A68736fE1A3f0C", + "0x305D807d22070DfFF295f5575eCD354f72c2eB76", + "0xc4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xcddbb", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000370ce6635140cf7d47e2b86e20a68736fe1a3f0c000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb7600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x21", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xda47f7c35576e54ee65ff025df3b7987619faf0da7b40050b3175925dc06cbbf", + "transactionType": "CREATE", + "contractName": null, + "contractAddress": "0xaC4d78F00D5bdb881434ad98037E2e5f0eeA1995", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x1b48fb", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611770806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638353b91911610104578063b9138580116100a2578063d547741f11610071578063d547741f146104fd578063da35a26f14610510578063dd3394aa14610523578063f0f442601461053657600080fd5b8063b9138580146104a4578063b9d47392146104c4578063c70eae8c146104d7578063cb9685ba146104ea57600080fd5b806391d14854116100de57806391d1485414610463578063977f82ba14610476578063a217fddf14610489578063ae98d8571461049157600080fd5b80638353b919146104115780638392767d146104245780638ffaa1401461043757600080fd5b80632f2ff15d1161017c5780635eb399681161014b5780635eb399681461036a578063608ebea1146103ac57806369ca69a5146103de57806371ef9a93146103fe57600080fd5b80632f2ff15d146102f357806336568abe1461030657806341859ac8146103195780635134b49a1461034757600080fd5b80630a4d85cd116101b85780630a4d85cd14610265578063145f8dd4146102a657806319742e6c146102bb578063248a9ca3146102d057600080fd5b806301ffc9a7146101df57806304a0fb1714610207578063069a9b641461023c575b600080fd5b6101f26101ed36600461123e565b610549565b60405190151581526020015b60405180910390f35b61022e7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee2781565b6040519081526020016101fe565b61022e61024a366004611284565b6001600160a01b031660009081526099602052604090205490565b61028e610273366004611284565b6098602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b61022e60008051602061171b83398151915281565b6102ce6102c936600461129f565b610580565b005b61022e6102de3660046112d9565b60009081526065602052604090206001015490565b6102ce6103013660046112f2565b6105da565b6102ce6103143660046112f2565b610604565b6101f2610327366004611284565b6001600160a01b0390811660009081526098602052604090205416151590565b6101f26103553660046112d9565b609c6020526000908152604090205460ff1681565b61037d6103783660046112d9565b610687565b6040805194855260208501939093526001600160a01b03918216928401929092521660608201526080016101fe565b6103bf6103ba36600461131e565b6106cd565b604080516001600160a01b0390931683526020830191909152016101fe565b61022e6103ec3660046112d9565b609d6020526000908152604090205481565b6102ce61040c36600461131e565b61072b565b6102ce61041f366004611348565b610790565b609b5461028e906001600160a01b031681565b61028e610445366004611284565b6001600160a01b039081166000908152609860205260409020541690565b6101f26104713660046112f2565b610864565b6102ce610484366004611384565b61088f565b61022e600081565b61022e61049f366004611348565b610937565b61022e6104b2366004611284565b60996020526000908152604090205481565b6102ce6104d23660046113d9565b610b2b565b6102ce6104e5366004611284565b610b8c565b6102ce6104f83660046114b4565b610bce565b6102ce61050b3660046112f2565b610c2d565b6102ce61051e3660046112f2565b610c52565b6102ce61053136600461154a565b610dc3565b6102ce610544366004611284565b610e6f565b60006001600160e01b03198216637965db0b60e01b148061057a57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061058b81610e9d565b6127108211156105ae57604051632627b42d60e11b815260040160405180910390fd5b506000918252609c60209081526040808420805460ff191695151595909517909455609d905291902055565b6000828152606560205260409020600101546105f581610e9d565b6105ff8383610eaa565b505050565b6001600160a01b03811633146106795760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6106838282610f30565b5050565b609a818154811061069757600080fd5b60009182526020909120600490910201805460018201546002830154600390930154919350916001600160a01b03908116911684565b6000818152609c6020526040812054819060ff16156106fb57506000828152609d6020526040902054610716565b506001600160a01b0383166000908152609960205260409020545b609b546001600160a01b031694909350915050565b600061073681610e9d565b6001600160a01b038316600081815260996020908152604091829020859055815192835282018490527fc1c540da095b5b6d54738e18568e3c832ae9d1a26f1abeb3e69efde2d4fd6ec291015b60405180910390a1505050565b7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee276107ba81610e9d565b6001600160a01b0384811660009081526098602052604090205416156107f35760405163515567cf60e01b815260040160405180910390fd5b6001600160a01b03848116600081815260986020908152604080832080546001600160a01b0319169589169586179055609982529182902086905590519182527fb0c28f4dd5b8aa95e332651d07f6930a2f9d46ae2bc4bfa73e2f33e478a1269b910160405180910390a250505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60008051602061171b8339815191526108a781610e9d565b6001600160a01b03868116600090815260986020526040908190205490516323f4440760e21b81528783166004820152868316602482015260448101869052606481018590529116908190638fd1101c906084015b600060405180830381600087803b15801561091657600080fd5b505af115801561092a573d6000803e3d6000fd5b5050505050505050505050565b600060008051602061171b83398151915261095181610e9d565b610959610f97565b6040805160808101825282815260208082018781526001600160a01b038a81168486018181523360608701818152609a8054600181018255600091909152975160049098027f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be481019890985594517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be588015590517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be6870180549185166001600160a01b031992831617905593517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be790960180549690931695909316949094179055835190815290810191909152919350849184917f5cbfe9cceabf50e9fcfff39e46cd47b1667ad148238648e99aee4fa0e1193d43910160405180910390a36001600160a01b03841615610b23576001600160a01b0385811660009081526098602052604090819020549051633670855b60e11b8152336004820152868316602482015260448101859052911690636ce10ab690606401600060405180830381600087803b158015610b0a57600080fd5b505af1158015610b1e573d6000803e3d6000fd5b505050505b509392505050565b6000610b3681610e9d565b6001600160a01b038216610b5d57604051632627b42d60e11b815260040160405180910390fd5b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee27610bb681610e9d565b61068360008051602061171b83398151915283610eaa565b60008051602061171b833981519152610be681610e9d565b6001600160a01b038087166000908152609860205260409081902054905163d518b7ff60e01b8152911690819063d518b7ff906108fc9089908990899089906004016115a3565b600082815260656020526040902060010154610c4881610e9d565b6105ff8383610f30565b600054610100900460ff1615808015610c725750600054600160ff909116105b80610c8c5750303b158015610c8c575060005460ff166001145b610cef5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610670565b6000805460ff191660011790558015610d12576000805461ff0019166101001790555b610d1a610fb9565b610d25600033611026565b6097839055609b80546001600160a01b0319166001600160a01b03841690811790915560408051918252602082018590527fa4888636278c973bcfd5eca8f86d67bf0c980edbf1740721c6f229b0421ae1e2910160405180910390a180156105ff576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610783565b6000610dce81610e9d565b6001600160a01b038085166000908152609860205260409020541680610e0757604051632627b42d60e11b815260040160405180910390fd5b60405163b08805a560e01b815260048101859052602481018490526001600160a01b0382169063b08805a590604401600060405180830381600087803b158015610e5057600080fd5b505af1158015610e64573d6000803e3d6000fd5b505050505050505050565b6000610e7a81610e9d565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b610ea78133611030565b50565b610eb48282610864565b6106835760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610eec3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610f3a8282610864565b156106835760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b609a54609754600091610fa9916115f7565b610fb49060016115f7565b905090565b600054610100900460ff166110245760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610670565b565b6106838282610eaa565b61103a8282610864565b6106835761104781611089565b61105283602061109b565b60405160200161106392919061162e565b60408051601f198184030181529082905262461bcd60e51b8252610670916004016116a3565b606061057a6001600160a01b03831660145b606060006110aa8360026116d6565b6110b59060026115f7565b67ffffffffffffffff8111156110cd576110cd611403565b6040519080825280601f01601f1916602001820160405280156110f7576020820181803683370190505b509050600360fc1b81600081518110611112576111126116ed565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611141576111416116ed565b60200101906001600160f81b031916908160001a90535060006111658460026116d6565b6111709060016115f7565b90505b60018111156111e8576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106111a4576111a46116ed565b1a60f81b8282815181106111ba576111ba6116ed565b60200101906001600160f81b031916908160001a90535060049490941c936111e181611703565b9050611173565b5083156112375760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610670565b9392505050565b60006020828403121561125057600080fd5b81356001600160e01b03198116811461123757600080fd5b80356001600160a01b038116811461127f57600080fd5b919050565b60006020828403121561129657600080fd5b61123782611268565b6000806000606084860312156112b457600080fd5b833580151581146112c457600080fd5b95602085013595506040909401359392505050565b6000602082840312156112eb57600080fd5b5035919050565b6000806040838503121561130557600080fd5b8235915061131560208401611268565b90509250929050565b6000806040838503121561133157600080fd5b61133a83611268565b946020939093013593505050565b60008060006060848603121561135d57600080fd5b61136684611268565b925061137460208501611268565b9150604084013590509250925092565b600080600080600060a0868803121561139c57600080fd5b6113a586611268565b94506113b360208701611268565b93506113c160408701611268565b94979396509394606081013594506080013592915050565b600080604083850312156113ec57600080fd5b6113f583611268565b915061131560208401611268565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261142a57600080fd5b8135602067ffffffffffffffff8083111561144757611447611403565b8260051b604051601f19603f8301168101818110848211171561146c5761146c611403565b60405293845285810183019383810192508785111561148a57600080fd5b83870191505b848210156114a957813583529183019190830190611490565b979650505050505050565b600080600080600060a086880312156114cc57600080fd5b6114d586611268565b94506114e360208701611268565b93506114f160408701611268565b9250606086013567ffffffffffffffff8082111561150e57600080fd5b61151a89838a01611419565b9350608088013591508082111561153057600080fd5b5061153d88828901611419565b9150509295509295909350565b60008060006060848603121561155f57600080fd5b6112c484611268565b600081518084526020808501945080840160005b838110156115985781518752958201959082019060010161157c565b509495945050505050565b6001600160a01b038581168252841660208201526080604082018190526000906115cf90830185611568565b82810360608401526114a98185611568565b634e487b7160e01b600052601160045260246000fd5b8082018082111561057a5761057a6115e1565b60005b8381101561162557818101518382015260200161160d565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161166681601785016020880161160a565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161169781602884016020880161160a565b01602801949350505050565b60208152600082518060208401526116c281604085016020870161160a565b601f01601f19169190910160400192915050565b808202811582820484141761057a5761057a6115e1565b634e487b7160e01b600052603260045260246000fd5b600081611712576117126115e1565b50600019019056fe40a5c770eee7730548a6335e1f372e76bf4759f6fda1a932bd9cfc33106f0b4ca2646970667358221220ca2dc61d57487a62371bc74dd138bad9447ad75c86bac12783a70400e6327b7b64736f6c63430008130033", + "nonce": "0x22", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x381f7556bf3b2bb0793dcf7c2ed10ce6952829f51867e4386a937b5a7d652a90", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x6e33CA04ec976B09291d9a470F7a88f3219B3abf", + "function": null, + "arguments": [ + "0xaC4d78F00D5bdb881434ad98037E2e5f0eeA1995", + "0x305D807d22070DfFF295f5575eCD354f72c2eB76", + "0xda35a26f0000000000000000000000000000000000000000000000000000000000004e20000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xd560f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000ac4d78f00d5bdb881434ad98037e2e5f0eea1995000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb7600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044da35a26f0000000000000000000000000000000000000000000000000000000000004e20000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x23", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x3cd7be1819bb0603879cf0c050384d1cf7d8ac2944b661f265b1383a2038687c", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0x718C9494Cf206568fe4465B30C78bc5Ddcc12689", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x1c20a8", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611836806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80636b7e394911610104578063a217fddf116100a2578063d57f966b11610071578063d57f966b146103f3578063d8f4b6fd146103fc578063e442ac1814610411578063fdbda0ec1461042457600080fd5b8063a217fddf146103b0578063bdd2fe78146103b8578063cfc5a0c0146103cb578063d547741f146103e057600080fd5b8063832ca2f5116100de578063832ca2f5146103645780638d058ac81461037757806391d148541461038a5780639f1fb80d1461039d57600080fd5b80636b7e39491461032b5780636cc82b841461033e5780637d2405bb1461035157600080fd5b8063248a9ca3116101715780634128541c1161014b5780634128541c146102df5780634c7dfac3146102f2578063641254bd14610305578063678213491461031857600080fd5b8063248a9ca3146102885780632f2ff15d146102b957806336568abe146102cc57600080fd5b80631c8518c2116101ad5780631c8518c2146102245780631ce6e4441461024f5780631e5b368414610262578063229a8a821461027557600080fd5b806301ffc9a7146101d45780631459457a146101fc57806318c25d8a14610211575b600080fd5b6101e76101e2366004611348565b610457565b60405190151581526020015b60405180910390f35b61020f61020a366004611389565b61048e565b005b61020f61021f3660046113ee565b61060f565b609b54610237906001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b609a54610237906001600160a01b031681565b61020f610270366004611418565b61077f565b610237610283366004611418565b610831565b6102ab610296366004611418565b60009081526065602052604090206001015490565b6040519081526020016101f3565b61020f6102c7366004611431565b61084b565b61020f6102da366004611431565b610870565b609854610237906001600160a01b031681565b6101e761030036600461145d565b6108ee565b61020f61031336600461145d565b610908565b61020f610326366004611478565b610936565b61020f61033936600461145d565b6109d9565b609954610237906001600160a01b031681565b61020f61035f36600461145d565b610a09565b61020f61037236600461145d565b610a37565b610237610385366004611418565b610a65565b6101e7610398366004611431565b610a7f565b61020f6103ab366004611557565b610aaa565b6102ab600081565b609c54610237906001600160a01b031681565b6102ab6000805160206117c183398151915281565b61020f6103ee366004611431565b610bd4565b6102ab609d5481565b6102ab6000805160206117e183398151915281565b61020f61041f3660046115bd565b610bf9565b610437610432366004611418565b610ca5565b604080516001600160a01b039384168152929091166020830152016101f3565b60006001600160e01b03198216637965db0b60e01b148061048857506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156104ae5750600054600160ff909116105b806104c85750303b1580156104c8575060005460ff166001145b6105305760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610553576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d556105b6610cde565b6105c1600033610d4b565b8015610607576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b6000805160206117c183398151915261062781610d55565b61271082111561064a57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661067157604051632627b42d60e11b815260040160405180910390fd5b609c54600090610689906001600160a01b0316610d62565b60985460405163485cc95560e01b81526001600160a01b038781166004830152918216602482015291925082169063485cc95590604401600060405180830381600087803b1580156106da57600080fd5b505af11580156106ee573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b91991506064015b600060405180830381600087803b15801561074957600080fd5b505af115801561075d573d6000803e3d6000fd5b505050506107796000805160206117e18339815191528561084b565b50505050565b6000805160206117e183398151915261079781610d55565b609b546000906107b0906001600160a01b031684610dfc565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561080a57600080fd5b505af115801561081e573d6000803e3d6000fd5b5050505061082c8133610e99565b505050565b609a54600090610488906001600160a01b03168330610ff1565b60008281526065602052604090206001015461086681610d55565b61082c838361104d565b6001600160a01b03811633146108e05760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610527565b6108ea82826110d3565b5050565b60006104886000805160206117e183398151915283610a7f565b600061091381610d55565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b6000805160206117c183398151915261094e81610d55565b61271082111561097157604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03841661099857604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b9199060640161072f565b6000805160206117c18339815191526109f181610d55565b6108ea6000805160206117e183398151915283610bd4565b6000610a1481610d55565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610a4281610d55565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b609b54600090610488906001600160a01b03168330610ff1565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000805160206117c1833981519152610ac281610d55565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610b0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b309190611602565b610b4d57604051634f3bd42760e01b815260040160405180910390fd5b6000610b598684610dfc565b60985460995460405163197a393d60e21b81529293506001600160a01b03808516936365e8e4f493610b98938b93918216929116908a90600401611674565b600060405180830381600087803b158015610bb257600080fd5b505af1158015610bc6573d6000803e3d6000fd5b505050506106078186610e99565b600082815260656020526040902060010154610bef81610d55565b61082c83836110d3565b6000805160206117e1833981519152610c1181610d55565b609a54600090610c2a906001600160a01b031684610dfc565b60985460995460405163197a393d60e21b81529293506001600160a01b03808516936365e8e4f493610c69933393918216929116908a90600401611674565b600060405180830381600087803b158015610c8357600080fd5b505af1158015610c97573d6000803e3d6000fd5b505050506107798133610e99565b60978181548110610cb557600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff16610d495760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610527565b565b6108ea828261104d565b610d5f813361113a565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b038116610df75760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b6044820152606401610527565b919050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b0381166104885760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c65640000000000000000006044820152606401610527565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c90610f6f9085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b158015610f8957600080fd5b505af1158015610f9d573d6000803e3d6000fd5b50505050609d60008154610fb0906116c8565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6110578282610a7f565b6108ea5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561108f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6110dd8282610a7f565b156108ea5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6111448282610a7f565b6108ea5761115181611193565b61115c8360206111a5565b60405160200161116d9291906116e1565b60408051601f198184030181529082905262461bcd60e51b825261052791600401611756565b60606104886001600160a01b03831660145b606060006111b4836002611769565b6111bf906002611780565b67ffffffffffffffff8111156111d7576111d76114b4565b6040519080825280601f01601f191660200182016040528015611201576020820181803683370190505b509050600360fc1b8160008151811061121c5761121c611793565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061124b5761124b611793565b60200101906001600160f81b031916908160001a905350600061126f846002611769565b61127a906001611780565b90505b60018111156112f2576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106112ae576112ae611793565b1a60f81b8282815181106112c4576112c4611793565b60200101906001600160f81b031916908160001a90535060049490941c936112eb816117a9565b905061127d565b5083156113415760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610527565b9392505050565b60006020828403121561135a57600080fd5b81356001600160e01b03198116811461134157600080fd5b80356001600160a01b0381168114610df757600080fd5b600080600080600060a086880312156113a157600080fd5b6113aa86611372565b94506113b860208701611372565b93506113c660408701611372565b92506113d460608701611372565b91506113e260808701611372565b90509295509295909350565b6000806040838503121561140157600080fd5b61140a83611372565b946020939093013593505050565b60006020828403121561142a57600080fd5b5035919050565b6000806040838503121561144457600080fd5b8235915061145460208401611372565b90509250929050565b60006020828403121561146f57600080fd5b61134182611372565b60008060006060848603121561148d57600080fd5b61149684611372565b92506114a460208501611372565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126114db57600080fd5b813567ffffffffffffffff808211156114f6576114f66114b4565b604051601f8301601f19908116603f0116810190828211818310171561151e5761151e6114b4565b8160405283815286602085880101111561153757600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561156d57600080fd5b61157685611372565b935061158460208601611372565b9250604085013567ffffffffffffffff8111156115a057600080fd5b6115ac878288016114ca565b949793965093946060013593505050565b600080604083850312156115d057600080fd5b823567ffffffffffffffff8111156115e757600080fd5b6115f3858286016114ca565b95602094909401359450505050565b60006020828403121561161457600080fd5b8151801515811461134157600080fd5b60005b8381101561163f578181015183820152602001611627565b50506000910152565b60008151808452611660816020860160208601611624565b601f01601f19169290920160200192915050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190526000906116a890830184611648565b9695505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016116da576116da6116b2565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611719816017850160208801611624565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161174a816028840160208801611624565b01602801949350505050565b6020815260006113416020830184611648565b8082028115828204841417610488576104886116b2565b80820180821115610488576104886116b2565b634e487b7160e01b600052603260045260246000fd5b6000816117b8576117b86116b2565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220e8261c01885e610fa152a11d1ee93f6170146b932119b0773109f6e03291865064736f6c63430008130033", + "nonce": "0x24", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xc5d0f1bd7085b869e13b8987d9cd75607a20720d4143e260b1da82c440409366", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x539B73c830FC5A1b133E620d5324CddA8E258BEe", + "function": null, + "arguments": [ + "0x718C9494Cf206568fe4465B30C78bc5Ddcc12689", + "0x305D807d22070DfFF295f5575eCD354f72c2eB76", + "0x1459457a0000000000000000000000006e33ca04ec976b09291d9a470f7a88f3219b3abf00000000000000000000000048254cec35d0bf845c877d5903d04b9643077be1000000000000000000000000c5e5baf5d09f92edebcc5fa43cf79aa8e53fd8f300000000000000000000000063c18a5f329a7be8975930e188655534a3ffa045000000000000000000000000e809751f9b135c63dc49f2ba6d0a11a183420b95" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xeb67f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000718c9494cf206568fe4465b30c78bc5ddcc12689000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb76000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a41459457a0000000000000000000000006e33ca04ec976b09291d9a470f7a88f3219b3abf00000000000000000000000048254cec35d0bf845c877d5903d04b9643077be1000000000000000000000000c5e5baf5d09f92edebcc5fa43cf79aa8e53fd8f300000000000000000000000063c18a5f329a7be8975930e188655534a3ffa045000000000000000000000000e809751f9b135c63dc49f2ba6d0a11a183420b9500000000000000000000000000000000000000000000000000000000", + "nonce": "0x25", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x8e1d3d3a3c51888f811f7a6ee28942de460f7f50134c3529bd15a13a5dbb48ae", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x6e33CA04ec976B09291d9a470F7a88f3219B3abf", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x6e33ca04ec976b09291d9a470f7a88f3219b3abf", + "gas": "0x14fbd", + "value": "0x0", + "data": "0x2f2ff15ddfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee27000000000000000000000000539b73c830fc5a1b133e620d5324cdda8e258bee", + "nonce": "0x26", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xb45bc7313841b7b8e38332194f3663c443ac15e5a7f857f38fa7d7a3fc232da5", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x539B73c830FC5A1b133E620d5324CddA8E258BEe", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x539b73c830fc5a1b133e620d5324cdda8e258bee", + "gas": "0x14fcb", + "value": "0x0", + "data": "0x2f2ff15d2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "nonce": "0x27", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xdeeaa33929ba6dd74be2e83d7f39c56851eb503001f91f13baf360c44d4fe1ac", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x48254cEc35d0Bf845c877d5903d04B9643077bE1", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x48254cec35d0bf845c877d5903d04b9643077be1", + "gas": "0x1213a", + "value": "0x0", + "data": "0x7adaeebe000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "nonce": "0x28", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0x8e1d3d3a3c51888f811f7a6ee28942de460f7f50134c3529bd15a13a5dbb48ae", + "transactionIndex": "0x0", + "blockHash": "0x4255b013e4daef6196a6299161bd2547e87a0c7249fdceabe22db04bf96b64da", + "blockNumber": "0x29cd16", + "from": "0x695F131733eD4D682328B06Da3885e68E9156166", + "to": "0x4Cd72FCedF61937fFC8995d7C0839C976F3cc129", + "cumulativeGasUsed": "0x4b57b", + "gasUsed": "0x4b57b", + "contractAddress": null, + "logs": [ + { + "address": "0x4Cd72FCedF61937fFC8995d7C0839C976F3cc129", + "topics": [ + "0x81c6f328b24014ef550c34a433275b52f3a8a0f32aa871adec069ab526a02390" + ], + "data": "0x00030d008099783a27e6b408da833ba4c360ba1b0c54d6e146247262fbeb0000000000000000000000000000000000000000000000000000000000000029cd16000000000000000000000000000000000000000000000000000000005ec76182090e14d015345b84bd05187175b1d5d7ecd0623c23fdfa37dedc4b12384f4016", + "blockHash": "0x4255b013e4daef6196a6299161bd2547e87a0c7249fdceabe22db04bf96b64da", + "blockNumber": "0x29cd16", + "transactionHash": "0xea0f48950b42061ac3954a6d7a0b4165337467e368c99ecde3f3d76f356965af", + "transactionIndex": "0x0", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000800000000002000000", + "type": "0x0", + "effectiveGasPrice": "0x3c336080" + }, + { + "transactionHash": "0x93eb1e534b0610b9bf62bce9c1ff762f01b08affc26d94baac78ce72b10b6a17", + "transactionIndex": "0x3", + "blockHash": "0xadec4f0a507be10fe07b24c084f865c4922036453ba24fbd051a2d0430107a40", + "blockNumber": "0x97694e", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x359380", + "gasUsed": "0x26b7d2", + "contractAddress": "0xC5e5baF5D09f92edebcC5fA43CF79aa8E53FD8f3", + "logs": [ + { + "address": "0xC5e5baF5D09f92edebcC5fA43CF79aa8E53FD8f3", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xadec4f0a507be10fe07b24c084f865c4922036453ba24fbd051a2d0430107a40", + "blockNumber": "0x97694e", + "transactionHash": "0x93eb1e534b0610b9bf62bce9c1ff762f01b08affc26d94baac78ce72b10b6a17", + "transactionIndex": "0x3", + "logIndex": "0x1c", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000001000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f1c" + }, + { + "transactionHash": "0xda47f7c35576e54ee65ff025df3b7987619faf0da7b40050b3175925dc06cbbf", + "transactionIndex": "0x5", + "blockHash": "0xadec4f0a507be10fe07b24c084f865c4922036453ba24fbd051a2d0430107a40", + "blockNumber": "0x97694e", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x4c4afd", + "gasUsed": "0x14fe96", + "contractAddress": "0xe809751f9b135C63dc49f2Ba6D0a11A183420b95", + "logs": [ + { + "address": "0xe809751f9b135C63dc49f2Ba6D0a11A183420b95", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xadec4f0a507be10fe07b24c084f865c4922036453ba24fbd051a2d0430107a40", + "blockNumber": "0x97694e", + "transactionHash": "0xda47f7c35576e54ee65ff025df3b7987619faf0da7b40050b3175925dc06cbbf", + "transactionIndex": "0x5", + "logIndex": "0x1d", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f1c" + }, + { + "transactionHash": "0x4ab8929fb10fe306c89f4c6985b48aa04bc98ddb683c86d0995ab9fe216442bd", + "transactionIndex": "0x1", + "blockHash": "0x3e4846ad421fdf766ce457f0d0f75b304a30e89954face9bd513dc191c403318", + "blockNumber": "0x97694f", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x316cfd", + "gasUsed": "0x311af5", + "contractAddress": "0x370cE6635140Cf7d47e2b86e20A68736fE1A3f0C", + "logs": [ + { + "address": "0x370cE6635140Cf7d47e2b86e20A68736fE1A3f0C", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x3e4846ad421fdf766ce457f0d0f75b304a30e89954face9bd513dc191c403318", + "blockNumber": "0x97694f", + "transactionHash": "0x4ab8929fb10fe306c89f4c6985b48aa04bc98ddb683c86d0995ab9fe216442bd", + "transactionIndex": "0x1", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000008000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f3f" + }, + { + "transactionHash": "0xc5d0f1bd7085b869e13b8987d9cd75607a20720d4143e260b1da82c440409366", + "transactionIndex": "0x0", + "blockHash": "0x898b3c0c34f6c231071f2e70c9fa45c4a11274920f1ddee94c2911602b225f00", + "blockNumber": "0x976952", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0xb5240", + "gasUsed": "0xb5240", + "contractAddress": "0x539B73c830FC5A1b133E620d5324CddA8E258BEe", + "logs": [ + { + "address": "0x539B73c830FC5A1b133E620d5324CddA8E258BEe", + "topics": [ + "0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", + "0x000000000000000000000000718c9494cf206568fe4465b30c78bc5ddcc12689" + ], + "data": "0x", + "blockHash": "0x898b3c0c34f6c231071f2e70c9fa45c4a11274920f1ddee94c2911602b225f00", + "blockNumber": "0x976952", + "transactionHash": "0xc5d0f1bd7085b869e13b8987d9cd75607a20720d4143e260b1da82c440409366", + "transactionIndex": "0x0", + "logIndex": "0x0", + "removed": false + }, + { + "address": "0x539B73c830FC5A1b133E620d5324CddA8E258BEe", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000ed1a447270a92d23b716a1cf52b1f9c358f447ee", + "0x000000000000000000000000ed1a447270a92d23b716a1cf52b1f9c358f447ee" + ], + "data": "0x", + "blockHash": "0x898b3c0c34f6c231071f2e70c9fa45c4a11274920f1ddee94c2911602b225f00", + "blockNumber": "0x976952", + "transactionHash": "0xc5d0f1bd7085b869e13b8987d9cd75607a20720d4143e260b1da82c440409366", + "transactionIndex": "0x0", + "logIndex": "0x1", + "removed": false + }, + { + "address": "0x539B73c830FC5A1b133E620d5324CddA8E258BEe", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", + "blockHash": "0x898b3c0c34f6c231071f2e70c9fa45c4a11274920f1ddee94c2911602b225f00", + "blockNumber": "0x976952", + "transactionHash": "0xc5d0f1bd7085b869e13b8987d9cd75607a20720d4143e260b1da82c440409366", + "transactionIndex": "0x0", + "logIndex": "0x2", + "removed": false + }, + { + "address": "0x539B73c830FC5A1b133E620d5324CddA8E258BEe", + "topics": [ + "0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f" + ], + "data": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb76", + "blockHash": "0x898b3c0c34f6c231071f2e70c9fa45c4a11274920f1ddee94c2911602b225f00", + "blockNumber": "0x976952", + "transactionHash": "0xc5d0f1bd7085b869e13b8987d9cd75607a20720d4143e260b1da82c440409366", + "transactionIndex": "0x0", + "logIndex": "0x3", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000004000000000000000000000000400000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000020000000000000000000a00000000800000000000000000000000000000040000000800000000000000000000000000000080000000000000800000000000000400000000000000000400010000000000000000001000000000000000000020000000100000000008040000000000008400000100000000000020000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f58" + }, + { + "transactionHash": "0x4e5d9576e77720a7dbdd0b19de8f936d0d2087a48546fcd5149fa02c66e8cf10", + "transactionIndex": "0x1", + "blockHash": "0xd9923d6df57023eae2af060b532a68876a361e54c97325f3e6ebf297c37f6137", + "blockNumber": "0x976953", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x1590c1", + "gasUsed": "0x11957c", + "contractAddress": "0x2c5ca0E834bb61A588F4a574a790ED17E05ce739", + "logs": [ + { + "address": "0x2c5ca0E834bb61A588F4a574a790ED17E05ce739", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd9923d6df57023eae2af060b532a68876a361e54c97325f3e6ebf297c37f6137", + "blockNumber": "0x976953", + "transactionHash": "0x4e5d9576e77720a7dbdd0b19de8f936d0d2087a48546fcd5149fa02c66e8cf10", + "transactionIndex": "0x1", + "logIndex": "0x9", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000002000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f48" + }, + { + "transactionHash": "0xdd48533298d4b7e8bb518eae8992de96792719630564545a4755a197f444bb2c", + "transactionIndex": "0x2", + "blockHash": "0xd9923d6df57023eae2af060b532a68876a361e54c97325f3e6ebf297c37f6137", + "blockNumber": "0x976953", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x34d646", + "gasUsed": "0x1f4585", + "contractAddress": "0xDDf904E1Ab048E8F1CC1364860a0F4cd6b026b6b", + "logs": [ + { + "address": "0xDDf904E1Ab048E8F1CC1364860a0F4cd6b026b6b", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd9923d6df57023eae2af060b532a68876a361e54c97325f3e6ebf297c37f6137", + "blockNumber": "0x976953", + "transactionHash": "0xdd48533298d4b7e8bb518eae8992de96792719630564545a4755a197f444bb2c", + "transactionIndex": "0x2", + "logIndex": "0xa", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f48" + }, + { + "transactionHash": "0x3cd7be1819bb0603879cf0c050384d1cf7d8ac2944b661f265b1383a2038687c", + "transactionIndex": "0x0", + "blockHash": "0x40a0f9457fc0a0cee8524e44e3fcedba354644539f2b9f61d6aca6f28e16578d", + "blockNumber": "0x976954", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x15a48c", + "gasUsed": "0x15a48c", + "contractAddress": "0x58714e563ad6a623E65d93cc45F435dcA10CF541", + "logs": [ + { + "address": "0x58714e563ad6a623E65d93cc45F435dcA10CF541", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x40a0f9457fc0a0cee8524e44e3fcedba354644539f2b9f61d6aca6f28e16578d", + "blockNumber": "0x976954", + "transactionHash": "0x3cd7be1819bb0603879cf0c050384d1cf7d8ac2944b661f265b1383a2038687c", + "transactionIndex": "0x0", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000080000000000000000000000400000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f36" + }, + { + "transactionHash": "0xb45bc7313841b7b8e38332194f3663c443ac15e5a7f857f38fa7d7a3fc232da5", + "transactionIndex": "0x1", + "blockHash": "0x40a0f9457fc0a0cee8524e44e3fcedba354644539f2b9f61d6aca6f28e16578d", + "blockNumber": "0x976954", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": "0x539B73c830FC5A1b133E620d5324CddA8E258BEe", + "cumulativeGasUsed": "0x168a27", + "gasUsed": "0xe59b", + "contractAddress": null, + "logs": [ + { + "address": "0x539B73c830FC5A1b133E620d5324CddA8E258BEe", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e", + "0x000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "0x000000000000000000000000ed1a447270a92d23b716a1cf52b1f9c358f447ee" + ], + "data": "0x", + "blockHash": "0x40a0f9457fc0a0cee8524e44e3fcedba354644539f2b9f61d6aca6f28e16578d", + "blockNumber": "0x976954", + "transactionHash": "0xb45bc7313841b7b8e38332194f3663c443ac15e5a7f857f38fa7d7a3fc232da5", + "transactionIndex": "0x1", + "logIndex": "0x1", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000004000000000000000000000000000000000000001000000000000000020000000000000000000000000000004000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000800000000000000000000000000000000200000000000000000000000000000000000000000000000800000000000000000000000000000000000000000010000000000000000000000000000000000000010000000000000000001000000000000000000000000000100000000000000000000000008000000100000000000000000000000000000000000000000400000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f36" + }, + { + "transactionHash": "0xdeeaa33929ba6dd74be2e83d7f39c56851eb503001f91f13baf360c44d4fe1ac", + "transactionIndex": "0x3", + "blockHash": "0xb2330eae542af2ad14c76dd9c85207bbf8ecf4d3cb0198e0a16d5c9402bc517f", + "blockNumber": "0x976956", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": "0x48254cEc35d0Bf845c877d5903d04B9643077bE1", + "cumulativeGasUsed": "0x3fc10", + "gasUsed": "0x53b8", + "contractAddress": null, + "logs": [], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f20" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1698150824, + "chain": 5, + "multi": false, + "commit": "9a7b2c3" +} \ No newline at end of file diff --git a/broadcast/deploy-platform.s.sol/5/run-1698150988.json b/broadcast/deploy-platform.s.sol/5/run-1698150988.json new file mode 100644 index 0000000..672bf31 --- /dev/null +++ b/broadcast/deploy-platform.s.sol/5/run-1698150988.json @@ -0,0 +1,288 @@ +{ + "transactions": [ + { + "hash": "0xbcee3fd358fb73da57f394fb8cb7f044347edcc55642f05d75c2b2cd3afe63d8", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0xEb7C4B1c64222a05958da577f1FFeCDe445EB204", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x3251ab", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612c7380620000f46000396000f3fe60806040526004361061020f5760003560e01c806370a0823111610118578063a1db9782116100a0578063d5abeb011161006f578063d5abeb0114610622578063de7ecf8714610638578063e985e9c51461064e578063f2fde38b1461066e578063fe325e961461068e57600080fd5b8063a1db9782146105af578063a22cb465146105cf578063b88d4fde146105ef578063c87b56dd1461060257600080fd5b806384a0c766116100e757806384a0c7661461051c5780638c72c54e1461053c5780638da5cb5b1461055c5780639182ba971461057a57806395d89b411461059a57600080fd5b806370a08231146104ad578063715018a6146104cd578063731133e9146104e2578063754b377c146104f557600080fd5b806342842e0e1161019b57806365e8e4f41161016a57806365e8e4f4146103f557806366748e98146104155780636cc82b841461044d5780636dbdaae61461046d5780636f8b44b01461048d57600080fd5b806342842e0e1461036e5780634b1022621461038157806355f804b3146103b55780636352211e146103d557600080fd5b806318160ddd116101e257806318160ddd146102b857806323b872dd146102db5780632a778c9b146102ee5780632e37eef6146103045780634128541c1461034e57600080fd5b806301ffc9a71461021457806306fdde0314610249578063081812fc1461026b578063095ea7b3146102a3575b600080fd5b34801561022057600080fd5b5061023461022f3660046121e8565b6106a3565b60405190151581526020015b60405180910390f35b34801561025557600080fd5b5061025e6106b4565b6040516102409190612255565b34801561027757600080fd5b5061028b610286366004612268565b61074f565b6040516001600160a01b039091168152602001610240565b6102b66102b1366004612296565b61079c565b005b3480156102c457600080fd5b506102cd6107ac565b604051908152602001610240565b6102b66102e93660046122c2565b6107cc565b3480156102fa57600080fd5b506102cd60685481565b34801561031057600080fd5b5061032461031f366004612268565b6109d0565b6040805195865260208601949094529284019190915260608301521515608082015260a001610240565b34801561035a57600080fd5b5060655461028b906001600160a01b031681565b6102b661037c3660046122c2565b610a14565b34801561038d57600080fd5b506102cd7f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156103c157600080fd5b506102b66103d036600461234b565b610a34565b3480156103e157600080fd5b5061028b6103f0366004612268565b610a49565b34801561040157600080fd5b506102b6610410366004612417565b610a54565b34801561042157600080fd5b506102cd610430366004612296565b606c60209081526000928352604080842090915290825290205481565b34801561045957600080fd5b5060665461028b906001600160a01b031681565b34801561047957600080fd5b506102b6610488366004612268565b610cd9565b34801561049957600080fd5b506102b66104a8366004612268565b610ce6565b3480156104b957600080fd5b506102cd6104c836600461249f565b610d1b565b3480156104d957600080fd5b506102b6610d83565b6102b66104f03660046124bc565b610d97565b34801561050157600080fd5b5061050a600181565b60405160ff9091168152602001610240565b34801561052857600080fd5b506102b6610537366004612525565b610fbe565b34801561054857600080fd5b5060675461028b906001600160a01b031681565b34801561056857600080fd5b506033546001600160a01b031661028b565b34801561058657600080fd5b506102b66105953660046125aa565b611003565b3480156105a657600080fd5b5061025e6111ca565b3480156105bb57600080fd5b506102b66105ca366004612296565b611206565b3480156105db57600080fd5b506102b66105ea36600461262c565b61127f565b6102b66105fd366004612665565b6112fc565b34801561060e57600080fd5b5061025e61061d366004612268565b611346565b34801561062e57600080fd5b506102cd606d5481565b34801561064457600080fd5b506102cd60695481565b34801561065a57600080fd5b506102346106693660046126b8565b6114a1565b34801561067a57600080fd5b506102b661068936600461249f565b6114de565b34801561069a57600080fd5b506102b6611557565b60006106ae82611729565b92915050565b60606106be611777565b60020180546106cc906126e6565b80601f01602080910402602001604051908101604052809291908181526020018280546106f8906126e6565b80156107455780601f1061071a57610100808354040283529160200191610745565b820191906000526020600020905b81548152906001019060200180831161072857829003601f168201915b5050505050905090565b600061075a8261179b565b610777576040516333d1c03960e21b815260040160405180910390fd5b61077f611777565b60009283526006016020525060409020546001600160a01b031690565b6107a8828260016117e4565b5050565b600060016107b8611777565b600101546107c4611777565b540303919050565b60006107d782611899565b9050836001600160a01b0316816001600160a01b03161461080a5760405162a1148160e81b815260040160405180910390fd5b60008061081684611946565b9150915061083b81876108263390565b6001600160a01b039081169116811491141790565b6108665761084986336114a1565b61086657604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b03851661088d57604051633a954ecd60e21b815260040160405180910390fd5b61089a868686600161196e565b80156108a557600082555b6108ad611777565b6001600160a01b03871660009081526005919091016020526040902080546000190190556108d9611777565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610910611777565b60008681526004919091016020526040812091909155600160e11b84169003610986576001840161093f611777565b60008281526004919091016020526040812054900361098457610960611777565b5481146109845783610970611777565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45b505050505050565b606b81815481106109e057600080fd5b6000918252602090912060059091020180546001820154600283015460038401546004909401549294509092909160ff1685565b610a2f838383604051806020016040528060008152506112fc565b505050565b610a3c6119ff565b606a610a2f828483612760565b60006106ae82611899565b600080516020612c1e83398151915254610100900460ff16610a8957600080516020612c1e8339815191525460ff1615610a8d565b303b155b610b045760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b600080516020612c1e83398151915254610100900460ff16158015610b4057600080516020612c1e833981519152805461ffff19166101011790555b600054610100900460ff1615808015610b605750600054600160ff909116105b80610b7a5750303b158015610b7a575060005460ff166001145b610bdd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610afb565b6000805460ff191660011790558015610c00576000805461ff0019166101001790555b610c198360405180602001604052806000815250611a59565b610c21611a97565b610c2a86611ac6565b6000606855606580546001600160a01b038088166001600160a01b0319928316179092556066805487841690831617905560678054928916929091169190911790558015610cb2576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610cd257600080516020612c1e833981519152805461ff00191690555b5050505050565b610ce16119ff565b606955565b610cee6119ff565b610cf6611b18565b811015610d1657604051632627b42d60e11b815260040160405180910390fd5b606d55565b60006001600160a01b038216610d44576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03610d54611777565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b610d8b6119ff565b610d956000611ac6565b565b610da084611b2b565b610dbd576040516332f7a9d760e21b815260040160405180910390fd5b6000606b8581548110610dd257610dd261281f565b60009182526020918290206040805160a0810182526005909302909101805483526001810154938301939093526002830154908201526003820154606082015260049091015460ff1615156080820152606d5490915084610e31611b18565b610e3b919061284b565b1115610e5a576040516322eb5e9560e21b815260040160405180910390fd5b8060800151610ef9576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490610e9b90899030908a908990899060040161285e565b602060405180830381865afa158015610eb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edc91906128b2565b610ef9576040516352c973a760e01b815260040160405180910390fd5b60608101516001600160a01b0387166000908152606c60209081526040808320898452909152902054610f2d90869061284b565b1115610f4c57604051631d66b65960e11b815260040160405180910390fd5b838160400151610f5c91906128cf565b3414610f7b576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0386166000908152606c6020908152604080832088845290915281208054869290610fae90849061284b565b909155506109c890508685611bd2565b610fc66119ff565b606d87905586851115610fec57604051632627b42d60e11b815260040160405180910390fd5b610ffa868686868686611d1a565b50505050505050565b61100b6119ff565b606b541561101f5761101f606b600061217d565b600081815b818110156111905760008585838181106110405761104061281f565b905060a0020180360381019061105691906128e6565b9050838160000151108061106e575060208101518151115b1561108c57604051632627b42d60e11b815260040160405180910390fd5b606b805460018101825560009190915281517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b4600590920291820181905560208301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b583015560408301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b683015560608301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b78301556080909201517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b8909101805460ff191691151591909117905592506111898161295b565b9050611024565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6060606854600014611203576111e1606854611e32565b6040516020016111f19190612974565b60405160208183030381529060405290505b90565b61120e6119ff565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af115801561125b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a2f91906128b2565b80611288611777565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113078484846107cc565b6001600160a01b0383163b156113405761132384848484611ec4565b611340576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b60606113518261179b565b61136e57604051632627b42d60e11b815260040160405180910390fd5b6000611378611faf565b9050805160000361139a5760405180602001604052806000815250915061149b565b60408051600180825281830190925260009160208201818036833701905050905081600183516113ca919061299e565b815181106113da576113da61281f565b602001015160f81c60f81b816000815181106113f8576113f861281f565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161144891906129b1565b6040516020818303038152906040528051906020012003611494578261146d86611fbe565b60405160200161147e9291906129cd565b6040516020818303038152906040529350611498565b8293505b50505b50919050565b60006114ab611777565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6114e66119ff565b6001600160a01b03811661154b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610afb565b61155481611ac6565b50565b61155f6119ff565b60655460675460685460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156115b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115dd91906129fc565b90925090506001600160a01b03821661160957604051632627b42d60e11b815260040160405180910390fd5b47600061271061161984846128cf565b6116239190612a2a565b90506000611631828461299e565b905080156116af576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611686576040519150601f19603f3d011682016040523d82523d6000602084013e61168b565b606091505b50509050806116ad57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610cd2576067546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611702576040519150601f19603f3d011682016040523d82523d6000602084013e611707565b606091505b50509050806109c857604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b03198316148061175a57506380ac58cd60e01b6001600160e01b03198316145b806106ae5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b6000816001111580156117b557506117b1611777565b5482105b80156106ae5750600160e01b6117c9611777565b60008481526004919091016020526040902054161592915050565b60006117ef83610a49565b9050811561182e57336001600160a01b0382161461182e5761181181336114a1565b61182e576040516367d9dca160e11b815260040160405180910390fd5b83611837611777565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b60008160011161192d576118ab611777565b600083815260049190910160205260408120549150600160e01b8216900361192d5780600003611928576118dd611777565b5482106118fd57604051636f96cda160e11b815260040160405180910390fd5b611905611777565b6000199092016000818152600493909301602052604090922054905080156118fd575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611953611777565b60009485526006016020525050604090912080549092909150565b6069541561134057606554606754606854604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156119e157600080fd5b505af11580156119f5573d6000803e3d6000fd5b5050505050505050565b6033546001600160a01b03163314610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610afb565b600080516020612c1e83398151915254610100900460ff16611a8d5760405162461bcd60e51b8152600401610afb90612a4c565b6107a88282612002565b600054610100900460ff16611abe5760405162461bcd60e51b8152600401610afb90612aa0565b610d95612075565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006001611b24611777565b5403919050565b606b546000908210611b5057604051632627b42d60e11b815260040160405180910390fd5b6000606b8381548110611b6557611b6561281f565b60009182526020918290206040805160a08101825260059093029091018054808452600182015494840194909452600281015491830191909152600381015460608301526004015460ff161515608082015291504210801590611bcb5750428160200151115b9392505050565b6000611bdc611777565b5490506000829003611c015760405163b562e8dd60e01b815260040160405180910390fd5b611c0e600084838561196e565b680100000000000000018202611c22611777565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717611c5d611777565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b818114611ce757808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101611caf565b5081600003611d0857604051622e076360e81b815260040160405180910390fd5b80611d11611777565b5550610a2f9050565b60685415611d3b576040516302d1671b60e41b815260040160405180910390fd5b85158015611d5157506001600160a01b03831615155b80611d6d57506001600160a01b038316158015611d6d57508515155b15611d8b57604051632627b42d60e11b815260040160405180910390fd5b60655460675460405163ae98d85760e01b81526001600160a01b03918216600482015285821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015611de8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0c9190612aeb565b6068556069869055606a611e21828483612760565b5084156109c8576109c88486611bd2565b60606000611e3f836120a5565b60010190506000816001600160401b03811115611e5e57611e5e61238c565b6040519080825280601f01601f191660200182016040528015611e88576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611e9257509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290611ef9903390899088908890600401612b04565b6020604051808303816000875af1925050508015611f34575060408051601f3d908101601f19168201909252611f3191810190612b41565b60015b611f92573d808015611f62576040519150601f19603f3d011682016040523d82523d6000602084013e611f67565b606091505b508051600003611f8a576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606a80546106cc906126e6565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a900480611fd85750819003601f19909101908152919050565b600080516020612c1e83398151915254610100900460ff166120365760405162461bcd60e51b8152600401610afb90612a4c565b8161203f611777565b6002019061204d9082612b5e565b5080612057611777565b600301906120659082612b5e565b506001612070611777565b555050565b600054610100900460ff1661209c5760405162461bcd60e51b8152600401610afb90612aa0565b610d9533611ac6565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106120e45772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612110576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061212e57662386f26fc10000830492506010015b6305f5e1008310612146576305f5e100830492506008015b612710831061215a57612710830492506004015b6064831061216c576064830492506002015b600a83106106ae5760010192915050565b508054600082556005029060005260206000209081019061155491905b808211156121ce5760008082556001820181905560028201819055600382015560048101805460ff1916905560050161219a565b5090565b6001600160e01b03198116811461155457600080fd5b6000602082840312156121fa57600080fd5b8135611bcb816121d2565b60005b83811015612220578181015183820152602001612208565b50506000910152565b60008151808452612241816020860160208601612205565b601f01601f19169290920160200192915050565b602081526000611bcb6020830184612229565b60006020828403121561227a57600080fd5b5035919050565b6001600160a01b038116811461155457600080fd5b600080604083850312156122a957600080fd5b82356122b481612281565b946020939093013593505050565b6000806000606084860312156122d757600080fd5b83356122e281612281565b925060208401356122f281612281565b929592945050506040919091013590565b60008083601f84011261231557600080fd5b5081356001600160401b0381111561232c57600080fd5b60208301915083602082850101111561234457600080fd5b9250929050565b6000806020838503121561235e57600080fd5b82356001600160401b0381111561237457600080fd5b61238085828601612303565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b03808411156123bc576123bc61238c565b604051601f8501601f19908116603f011681019082821181831017156123e4576123e461238c565b816040528093508581528686860111156123fd57600080fd5b858560208301376000602087830101525050509392505050565b6000806000806080858703121561242d57600080fd5b843561243881612281565b9350602085013561244881612281565b9250604085013561245881612281565b915060608501356001600160401b0381111561247357600080fd5b8501601f8101871361248457600080fd5b612493878235602084016123a2565b91505092959194509250565b6000602082840312156124b157600080fd5b8135611bcb81612281565b6000806000806000608086880312156124d457600080fd5b85356124df81612281565b9450602086013593506040860135925060608601356001600160401b0381111561250857600080fd5b61251488828901612303565b969995985093965092949392505050565b600080600080600080600060c0888a03121561254057600080fd5b873596506020880135955060408801359450606088013561256081612281565b9350608088013561257081612281565b925060a08801356001600160401b0381111561258b57600080fd5b6125978a828b01612303565b989b979a50959850939692959293505050565b600080602083850312156125bd57600080fd5b82356001600160401b03808211156125d457600080fd5b818501915085601f8301126125e857600080fd5b8135818111156125f757600080fd5b86602060a08302850101111561260c57600080fd5b60209290920196919550909350505050565b801515811461155457600080fd5b6000806040838503121561263f57600080fd5b823561264a81612281565b9150602083013561265a8161261e565b809150509250929050565b6000806000806080858703121561267b57600080fd5b843561268681612281565b9350602085013561269681612281565b92506040850135915060608501356001600160401b0381111561247357600080fd5b600080604083850312156126cb57600080fd5b82356126d681612281565b9150602083013561265a81612281565b600181811c908216806126fa57607f821691505b60208210810361149b57634e487b7160e01b600052602260045260246000fd5b601f821115610a2f57600081815260208120601f850160051c810160208610156127415750805b601f850160051c820191505b818110156109c85782815560010161274d565b6001600160401b038311156127775761277761238c565b61278b8361278583546126e6565b8361271a565b6000601f8411600181146127bf57600085156127a75750838201355b600019600387901b1c1916600186901b178355610cd2565b600083815260209020601f19861690835b828110156127f057868501358255602094850194600190920191016127d0565b508682101561280d5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156106ae576106ae612835565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b6000602082840312156128c457600080fd5b8151611bcb8161261e565b80820281158282048414176106ae576106ae612835565b600060a082840312156128f857600080fd5b60405160a081018181106001600160401b038211171561291a5761291a61238c565b806040525082358152602083013560208201526040830135604082015260608301356060820152608083013561294f8161261e565b60808201529392505050565b60006001820161296d5761296d612835565b5060010190565b6120a160f11b815260008251612991816002850160208701612205565b9190910160020192915050565b818103818111156106ae576106ae612835565b600082516129c3818460208701612205565b9190910192915050565b600083516129df818460208801612205565b8351908301906129f3818360208801612205565b01949350505050565b60008060408385031215612a0f57600080fd5b8251612a1a81612281565b6020939093015192949293505050565b600082612a4757634e487b7160e01b600052601260045260246000fd5b500490565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600060208284031215612afd57600080fd5b5051919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612b3790830184612229565b9695505050505050565b600060208284031215612b5357600080fd5b8151611bcb816121d2565b81516001600160401b03811115612b7757612b7761238c565b612b8b81612b8584546126e6565b8461271a565b602080601f831160018114612bc05760008415612ba85750858301515b600019600386901b1c1916600185901b1785556109c8565b600085815260208120601f198616915b82811015612bef57888601518255948401946001909101908401612bd0565b5085821015612c0d5787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220210ddb125bf4095c0abcbd659a3c60649af2f481592701c6da57632ae48d0ba164736f6c63430008130033", + "nonce": "0x2c", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x666955695220123c2228f59ccebac46b0078c08d2c0b822aeacf4594afdcc442", + "transactionType": "CREATE", + "contractName": null, + "contractAddress": "0x1E7B76cB83E6638c504E03a36bB69500457E8611", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x3fd18d", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6138c080620000f46000396000f3fe6080604052600436106101c15760003560e01c806375794a3c116100f7578063c0c53b8b11610095578063f0c62a2f11610064578063f0c62a2f146105bd578063f242432a146105d0578063f2fde38b146105f0578063fe325e961461061057600080fd5b8063c0c53b8b14610521578063ca41ca6414610541578063e985e9c514610554578063ed01bda71461059d57600080fd5b80638da5cb5b116100d15780638da5cb5b146104a3578063a1db9782146104c1578063a22cb465146104e1578063ba0802ae1461050157600080fd5b806375794a3c1461040957806376744f501461041f5780638c72c54e1461048357600080fd5b80633b9ed29e116101645780634e1273f41161013e5780634e1273f4146103805780636cc82b84146103ad578063715018a6146103cd578063754b377c146103e257600080fd5b80633b9ed29e146102d85780633bd651a0146103165780634128541c1461034857600080fd5b80630f0e59ac116101a05780630f0e59ac14610256578063162094c4146102785780632eb2c2d61461029857806337da577c146102b857600080fd5b8062fdd58e146101c657806301ffc9a7146101f95780630e89341c14610229575b600080fd5b3480156101d257600080fd5b506101e66101e1366004612873565b610625565b6040519081526020015b60405180910390f35b34801561020557600080fd5b506102196102143660046128b5565b6106c0565b60405190151581526020016101f0565b34801561023557600080fd5b506102496102443660046128d9565b6106cb565b6040516101f09190612938565b34801561026257600080fd5b50610276610271366004612996565b610770565b005b34801561028457600080fd5b50610276610293366004612a76565b6107c6565b3480156102a457600080fd5b506102766102b3366004612b84565b6107ee565b3480156102c457600080fd5b506102766102d3366004612c31565b61083a565b3480156102e457600080fd5b506101e66102f3366004612c53565b60ce60209081526000938452604080852082529284528284209052825290205481565b34801561032257600080fd5b506103366103313660046128d9565b610889565b6040516101f096959493929190612c88565b34801561035457600080fd5b5060c954610368906001600160a01b031681565b6040516001600160a01b0390911681526020016101f0565b34801561038c57600080fd5b506103a061039b366004612cc5565b61094d565b6040516101f09190612dc2565b3480156103b957600080fd5b5060ca54610368906001600160a01b031681565b3480156103d957600080fd5b50610276610a76565b3480156103ee57600080fd5b506103f7600181565b60405160ff90911681526020016101f0565b34801561041557600080fd5b506101e660cc5481565b34801561042b57600080fd5b5061043f61043a366004612c31565b610a8a565b6040516101f09190600060a0820190508251825260208301516020830152604083015160408301526060830151606083015260808301511515608083015292915050565b34801561048f57600080fd5b5060cb54610368906001600160a01b031681565b3480156104af57600080fd5b506097546001600160a01b0316610368565b3480156104cd57600080fd5b506102766104dc366004612873565b610b1d565b3480156104ed57600080fd5b506102766104fc366004612de3565b610b96565b34801561050d57600080fd5b5061027661051c366004612e1c565b610ba5565b34801561052d57600080fd5b5061027661053c366004612e56565b610bb9565b61027661054f366004612ea1565b610d2f565b34801561056057600080fd5b5061021961056f366004612eec565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205460ff1690565b3480156105a957600080fd5b506102766105b8366004612f1a565b610fe2565b6102766105cb366004612f98565b611108565b3480156105dc57600080fd5b506102766105eb366004612fec565b611729565b3480156105fc57600080fd5b5061027661060b366004613054565b61176e565b34801561061c57600080fd5b506102766117e4565b60006001600160a01b0383166106955760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b60006106ba826119ba565b600081815260cd602052604090206006018054606091906106eb90613071565b80601f016020809104026020016040519081016040528092919081815260200182805461071790613071565b80156107645780601f1061073957610100808354040283529160200191610764565b820191906000526020600020905b81548152906001019060200180831161074757829003601f168201915b50505050509050919050565b610778611a0a565b8060005b818110156107c0576107b0848483818110610799576107996130ab565b90506020028101906107ab91906130c1565b611a64565b6107b9816130f7565b905061077c565b50505050565b6107ce611a0a565b600082815260cd602052604090206006016107e98282613156565b505050565b6001600160a01b03851633148061080a575061080a853361056f565b6108265760405162461bcd60e51b815260040161068c90613215565b6108338585858585611c4e565b5050505050565b610842611a0a565b600082815260cd602052604090206001015481101561087457604051632627b42d60e11b815260040160405180910390fd5b600091825260cd602052604090912060020155565b60cd6020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060060180546108ca90613071565b80601f01602080910402602001604051908101604052809291908181526020018280546108f690613071565b80156109435780601f1061091857610100808354040283529160200191610943565b820191906000526020600020905b81548152906001019060200180831161092657829003601f168201915b5050505050905086565b606081518351146109b25760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b606482015260840161068c565b600083516001600160401b038111156109cd576109cd6129d7565b6040519080825280602002602001820160405280156109f6578160200160208202803683370190505b50905060005b8451811015610a6e57610a41858281518110610a1a57610a1a6130ab565b6020026020010151858381518110610a3457610a346130ab565b6020026020010151610625565b828281518110610a5357610a536130ab565b6020908102919091010152610a67816130f7565b90506109fc565b509392505050565b610a7e611a0a565b610a886000611df3565b565b610abe6040518060a00160405280600081526020016000815260200160008152602001600081526020016000151581525090565b50600091825260cd602090815260408084209284526005909201815291819020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff161515608082015290565b610b25611a0a565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613263565b610ba1338383611e45565b5050565b610bad611a0a565b610bb681611a64565b50565b600054610100900460ff1615808015610bd95750600054600160ff909116105b80610bf35750303b158015610bf3575060005460ff166001145b610c565760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161068c565b6000805460ff191660011790558015610c79576000805461ff0019166101001790555b610c9160405180602001604052806000815250611f25565b610c99611f55565b610ca284611df3565b600160cc5560c980546001600160a01b038086166001600160a01b03199283161790925560ca805485841690831617905560cb80549287169290911691909117905580156107c0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b8035600090815260cd602052604081206003810154909103610d645760405163746a696560e01b815260040160405180910390fd5b6020808301356000908152600583018252604090819020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff1615156080820152610dc081611f84565b610ddd576040516332f7a9d760e21b815260040160405180910390fd5b816002015483604001358360010154610df69190613280565b1115610e15576040516322eb5e9560e21b815260040160405180910390fd5b8060800151610ec45760ca546001600160a01b031663af92c48a853086356020880135610e4560608a018a613293565b6040518763ffffffff1660e01b8152600401610e66969594939291906132d9565b602060405180830381865afa158015610e83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea79190613263565b610ec4576040516352c973a760e01b815260040160405180910390fd5b60608101516001600160a01b038516600090815260ce602090815260408083208735845282528083208288013584529091529081902054610f089186013590613280565b1115610f2757604051631d66b65960e11b815260040160405180910390fd5b82604001358160400151610f3b9190613335565b3414610f5a576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b038416600090815260ce60209081526040808320863584528252808320828701358452909152808220805491860135929091610f9e908490613280565b925050819055508260400135826001016000828254610fbd9190613280565b909155505060408051602081018252600081526107c091869186359187013590611fbe565b610fea611a0a565b600083815260cd602052604081209082815b818110156110c5576000868683818110611018576110186130ab565b905060a0020180360381019061102e919061334c565b90508381600001511080611046575060208101518151115b1561106457604051632627b42d60e11b815260040160405180910390fd5b60008281526005860160209081526040918290208351808255918401516001820155918301516002830155606083015160038301556080909201516004909101805460ff191691151591909117905592506110be816130f7565b9050610ffc565b50600383018490556040518681527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a1505050505050565b806000816001600160401b03811115611123576111236129d7565b60405190808252806020026020018201604052801561114c578160200160208202803683370190505b5090506000826001600160401b03811115611169576111696129d7565b604051908082528060200260200182016040528015611192578160200160208202803683370190505b509050600080805b858110156116e35760cd60008989848181106111b8576111b86130ab565b90506020028101906111ca91906133c1565b600001358152602001908152602001600020915081600301546000036112035760405163746a696560e01b815260040160405180910390fd5b60008260050160008a8a8581811061121d5761121d6130ab565b905060200281019061122f91906133c1565b6020908101358252818101929092526040908101600020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff1615156080820152905061128d81611f84565b6112aa576040516332f7a9d760e21b815260040160405180910390fd5b82600201548989848181106112c1576112c16130ab565b90506020028101906112d391906133c1565b6040013584600101546112e69190613280565b1115611305576040516322eb5e9560e21b815260040160405180910390fd5b806080015161141f5760ca546001600160a01b031663af92c48a8b308c8c87818110611333576113336130ab565b905060200281019061134591906133c1565b358d8d88818110611358576113586130ab565b905060200281019061136a91906133c1565b602001358e8e89818110611380576113806130ab565b905060200281019061139291906133c1565b6113a0906060810190613293565b6040518763ffffffff1660e01b81526004016113c1969594939291906132d9565b602060405180830381865afa1580156113de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114029190613263565b61141f576040516352c973a760e01b815260040160405180910390fd5b8060600151898984818110611436576114366130ab565b905060200281019061144891906133c1565b6001600160a01b038c16600090815260ce602052604080822092013591908c8c87818110611478576114786130ab565b905060200281019061148a91906133c1565b60000135815260200190815260200160002060008c8c878181106114b0576114b06130ab565b90506020028101906114c291906133c1565b602001358152602001908152602001600020546114df9190613280565b11156114fe57604051631d66b65960e11b815260040160405180910390fd5b888883818110611510576115106130ab565b905060200281019061152291906133c1565b6001600160a01b038b16600090815260ce602052604080822092013591908b8b86818110611552576115526130ab565b905060200281019061156491906133c1565b60000135815260200190815260200160002060008b8b8681811061158a5761158a6130ab565b905060200281019061159c91906133c1565b60200135815260200190815260200160002060008282546115bd9190613280565b9091555089905088838181106115d5576115d56130ab565b90506020028101906115e791906133c1565b604001358360010160008282546115fe9190613280565b909155508990508883818110611616576116166130ab565b905060200281019061162891906133c1565b60400135816040015161163b9190613335565b6116459085613280565b9350888883818110611659576116596130ab565b905060200281019061166b91906133c1565b60000135868381518110611681576116816130ab565b60200260200101818152505088888381811061169f5761169f6130ab565b90506020028101906116b191906133c1565b604001358583815181106116c7576116c76130ab565b6020908102919091010152506116dc816130f7565b905061119a565b50813414611704576040516318f4198360e21b815260040160405180910390fd5b61171f888585604051806020016040528060008152506120a9565b5050505050505050565b6001600160a01b0385163314806117455750611745853361056f565b6117615760405162461bcd60e51b815260040161068c90613215565b6108338585858585612204565b611776611a0a565b6001600160a01b0381166117db5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161068c565b610bb681611df3565b6117ec611a0a565b60c95460cb5460405163608ebea160e01b81526001600160a01b039182166004820152600060248201819052928392169063608ebea1906044016040805180830381865afa158015611842573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186691906133d7565b90925090506001600160a01b03821661189257604051632627b42d60e11b815260040160405180910390fd5b4760006127106118a28484613335565b6118ac9190613405565b905060006118ba8284613427565b90508015611938576000856001600160a01b03168260405160006040518083038185875af1925050503d806000811461190f576040519150601f19603f3d011682016040523d82523d6000602084013e611914565b606091505b505090508061193657604051631fa55c0760e11b815260040160405180910390fd5b505b81156108335760cb546040516000916001600160a01b03169084908381818185875af1925050503d806000811461198b576040519150601f19603f3d011682016040523d82523d6000602084013e611990565b606091505b50509050806119b257604051631fa55c0760e11b815260040160405180910390fd5b505050505050565b60006001600160e01b03198216636cdb3d1360e11b14806119eb57506001600160e01b031982166303a24d0760e21b145b806106ba57506301ffc9a760e01b6001600160e01b03198316146106ba565b6097546001600160a01b03163314610a885760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161068c565b6020810135158015611a8f57506000611a8360a0830160808401613054565b6001600160a01b031614155b80611ac057506000611aa760a0830160808401613054565b6001600160a01b0316148015611ac05750602081013515155b15611ade57604051632627b42d60e11b815260040160405180910390fd5b60cc54600090815260cd6020526040812060c95460cb549192916001600160a01b039182169163ae98d8579116611b1b60a0870160808801613054565b60cc546040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b96919061343a565b80835583356002840155602084013560048401559050611bb960a0840184613293565b6006840191611bc9919083613453565b50604083013515611c3457823560408401351115611bfa57604051632627b42d60e11b815260040160405180910390fd5b60408301356001830155611c34611c176080850160608601613054565b60cc54856040013560405180602001604052806000815250611fbe565b60cc8054906000611c44836130f7565b9190505550505050565b8151835114611c6f5760405162461bcd60e51b815260040161068c90613512565b6001600160a01b038416611c955760405162461bcd60e51b815260040161068c9061355a565b33611ca4818787878787612340565b60005b8451811015611d8d576000858281518110611cc457611cc46130ab565b602002602001015190506000858381518110611ce257611ce26130ab565b60209081029190910181015160008481526065835260408082206001600160a01b038e168352909352919091205490915081811015611d335760405162461bcd60e51b815260040161068c9061359f565b60008381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290611d72908490613280565b9250508190555050505080611d86906130f7565b9050611ca7565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611ddd9291906135e9565b60405180910390a46119b2818787878787612591565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b031603611eb85760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b606482015260840161068c565b6001600160a01b03838116600081815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b600054610100900460ff16611f4c5760405162461bcd60e51b815260040161068c90613617565b610bb6816126ec565b600054610100900460ff16611f7c5760405162461bcd60e51b815260040161068c90613617565b610a8861271c565b80516000908103611fa857604051632627b42d60e11b815260040160405180910390fd5b815142108015906106ba57505060200151421090565b6001600160a01b038416611fe45760405162461bcd60e51b815260040161068c90613662565b336000611ff08561274c565b90506000611ffd8561274c565b905061200e83600089858589612340565b60008681526065602090815260408083206001600160a01b038b16845290915281208054879290612040908490613280565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46120a083600089898989612797565b50505050505050565b6001600160a01b0384166120cf5760405162461bcd60e51b815260040161068c90613662565b81518351146120f05760405162461bcd60e51b815260040161068c90613512565b3361210081600087878787612340565b60005b845181101561219c5783818151811061211e5761211e6130ab565b60200260200101516065600087848151811061213c5761213c6130ab565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b0316815260200190815260200160002060008282546121849190613280565b90915550819050612194816130f7565b915050612103565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516121ed9291906135e9565b60405180910390a461083381600087878787612591565b6001600160a01b03841661222a5760405162461bcd60e51b815260040161068c9061355a565b3360006122368561274c565b905060006122438561274c565b9050612253838989858589612340565b60008681526065602090815260408083206001600160a01b038c168452909152902054858110156122965760405162461bcd60e51b815260040161068c9061359f565b60008781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906122d5908490613280565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612335848a8a8a8a8a612797565b505050505050505050565b8251600090815b818110156123a357600060cd6000888481518110612367576123676130ab565b6020026020010151815260200190815260200160002060040154111561239357612390836130f7565b92505b61239c816130f7565b9050612347565b506000826001600160401b038111156123be576123be6129d7565b6040519080825280602002602001820160405280156123e7578160200160208202803683370190505b5090506000836001600160401b03811115612404576124046129d7565b60405190808252806020026020018201604052801561242d578160200160208202803683370190505b5090506000805b8481101561251557600060cd60008b8481518110612454576124546130ab565b602002602001015181526020019081526020016000206004015411156125055760cd60008a838151811061248a5761248a6130ab565b60200260200101518152602001908152602001600020600001548483815181106124b6576124b66130ab565b6020026020010181815250508781815181106124d4576124d46130ab565b60200260200101518383815181106124ee576124ee6130ab565b6020908102919091010152612502826130f7565b91505b61250e816130f7565b9050612434565b5060c95460cb546040516365cb42dd60e11b81526001600160a01b039283169263cb9685ba92612552929116908e908e90899089906004016136a3565b600060405180830381600087803b15801561256c57600080fd5b505af1158015612580573d6000803e3d6000fd5b505050505050505050505050505050565b6001600160a01b0384163b156119b25760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906125d590899089908890889088906004016136e9565b6020604051808303816000875af1925050508015612610575060408051601f3d908101601f1916820190925261260d9181019061373b565b60015b6126bc5761261c613758565b806308c379a0036126555750612630613774565b8061263b5750612657565b8060405162461bcd60e51b815260040161068c9190612938565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e2d455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b606482015260840161068c565b6001600160e01b0319811663bc197c8160e01b146120a05760405162461bcd60e51b815260040161068c906137fd565b600054610100900460ff166127135760405162461bcd60e51b815260040161068c90613617565b610bb681612852565b600054610100900460ff166127435760405162461bcd60e51b815260040161068c90613617565b610a8833611df3565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612786576127866130ab565b602090810291909101015292915050565b6001600160a01b0384163b156119b25760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906127db9089908990889088908890600401613845565b6020604051808303816000875af1925050508015612816575060408051601f3d908101601f191682019092526128139181019061373b565b60015b6128225761261c613758565b6001600160e01b0319811663f23a6e6160e01b146120a05760405162461bcd60e51b815260040161068c906137fd565b6067610ba18282613156565b6001600160a01b0381168114610bb657600080fd5b6000806040838503121561288657600080fd5b82356128918161285e565b946020939093013593505050565b6001600160e01b031981168114610bb657600080fd5b6000602082840312156128c757600080fd5b81356128d28161289f565b9392505050565b6000602082840312156128eb57600080fd5b5035919050565b6000815180845260005b81811015612918576020818501810151868301820152016128fc565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006128d260208301846128f2565b60008083601f84011261295d57600080fd5b5081356001600160401b0381111561297457600080fd5b6020830191508360208260051b850101111561298f57600080fd5b9250929050565b600080602083850312156129a957600080fd5b82356001600160401b038111156129bf57600080fd5b6129cb8582860161294b565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b0381118282101715612a1257612a126129d7565b6040525050565b60006001600160401b03831115612a3257612a326129d7565b604051612a49601f8501601f1916602001826129ed565b809150838152848484011115612a5e57600080fd5b83836020830137600060208583010152509392505050565b60008060408385031215612a8957600080fd5b8235915060208301356001600160401b03811115612aa657600080fd5b8301601f81018513612ab757600080fd5b612ac685823560208401612a19565b9150509250929050565b60006001600160401b03821115612ae957612ae96129d7565b5060051b60200190565b600082601f830112612b0457600080fd5b81356020612b1182612ad0565b604051612b1e82826129ed565b83815260059390931b8501820192828101915086841115612b3e57600080fd5b8286015b84811015612b595780358352918301918301612b42565b509695505050505050565b600082601f830112612b7557600080fd5b6128d283833560208501612a19565b600080600080600060a08688031215612b9c57600080fd5b8535612ba78161285e565b94506020860135612bb78161285e565b935060408601356001600160401b0380821115612bd357600080fd5b612bdf89838a01612af3565b94506060880135915080821115612bf557600080fd5b612c0189838a01612af3565b93506080880135915080821115612c1757600080fd5b50612c2488828901612b64565b9150509295509295909350565b60008060408385031215612c4457600080fd5b50508035926020909101359150565b600080600060608486031215612c6857600080fd5b8335612c738161285e565b95602085013595506040909401359392505050565b86815285602082015284604082015283606082015282608082015260c060a08201526000612cb960c08301846128f2565b98975050505050505050565b60008060408385031215612cd857600080fd5b82356001600160401b0380821115612cef57600080fd5b818501915085601f830112612d0357600080fd5b81356020612d1082612ad0565b604051612d1d82826129ed565b83815260059390931b8501820192828101915089841115612d3d57600080fd5b948201945b83861015612d64578535612d558161285e565b82529482019490820190612d42565b96505086013592505080821115612d7a57600080fd5b50612ac685828601612af3565b600081518084526020808501945080840160005b83811015612db757815187529582019590820190600101612d9b565b509495945050505050565b6020815260006128d26020830184612d87565b8015158114610bb657600080fd5b60008060408385031215612df657600080fd5b8235612e018161285e565b91506020830135612e1181612dd5565b809150509250929050565b600060208284031215612e2e57600080fd5b81356001600160401b03811115612e4457600080fd5b820160c081850312156128d257600080fd5b600080600060608486031215612e6b57600080fd5b8335612e768161285e565b92506020840135612e868161285e565b91506040840135612e968161285e565b809150509250925092565b60008060408385031215612eb457600080fd5b8235612ebf8161285e565b915060208301356001600160401b03811115612eda57600080fd5b830160808186031215612e1157600080fd5b60008060408385031215612eff57600080fd5b8235612f0a8161285e565b91506020830135612e118161285e565b600080600060408486031215612f2f57600080fd5b8335925060208401356001600160401b0380821115612f4d57600080fd5b818601915086601f830112612f6157600080fd5b813581811115612f7057600080fd5b87602060a083028501011115612f8557600080fd5b6020830194508093505050509250925092565b600080600060408486031215612fad57600080fd5b8335612fb88161285e565b925060208401356001600160401b03811115612fd357600080fd5b612fdf8682870161294b565b9497909650939450505050565b600080600080600060a0868803121561300457600080fd5b853561300f8161285e565b9450602086013561301f8161285e565b9350604086013592506060860135915060808601356001600160401b0381111561304857600080fd5b612c2488828901612b64565b60006020828403121561306657600080fd5b81356128d28161285e565b600181811c9082168061308557607f821691505b6020821081036130a557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b6000823560be198336030181126130d757600080fd5b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b600060018201613109576131096130e1565b5060010190565b601f8211156107e957600081815260208120601f850160051c810160208610156131375750805b601f850160051c820191505b818110156119b257828155600101613143565b81516001600160401b0381111561316f5761316f6129d7565b6131838161317d8454613071565b84613110565b602080601f8311600181146131b857600084156131a05750858301515b600019600386901b1c1916600185901b1785556119b2565b600085815260208120601f198616915b828110156131e7578886015182559484019460019091019084016131c8565b50858210156132055787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252602e908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526d195c881bdc88185c1c1c9bdd995960921b606082015260800190565b60006020828403121561327557600080fd5b81516128d281612dd5565b808201808211156106ba576106ba6130e1565b6000808335601e198436030181126132aa57600080fd5b8301803591506001600160401b038211156132c457600080fd5b60200191503681900382131561298f57600080fd5b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905281018290526000828460c0840137600060c0848401015260c0601f19601f8501168301019050979650505050505050565b80820281158282048414176106ba576106ba6130e1565b600060a0828403121561335e57600080fd5b60405160a081018181106001600160401b0382111715613380576133806129d7565b80604052508235815260208301356020820152604083013560408201526060830135606082015260808301356133b581612dd5565b60808201529392505050565b60008235607e198336030181126130d757600080fd5b600080604083850312156133ea57600080fd5b82516133f58161285e565b6020939093015192949293505050565b60008261342257634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106ba576106ba6130e1565b60006020828403121561344c57600080fd5b5051919050565b6001600160401b0383111561346a5761346a6129d7565b61347e836134788354613071565b83613110565b6000601f8411600181146134b2576000851561349a5750838201355b600019600387901b1c1916600186901b178355610833565b600083815260209020601f19861690835b828110156134e357868501358255602094850194600190920191016134c3565b50868210156135005760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b6040815260006135fc6040830185612d87565b828103602084015261360e8185612d87565b95945050505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b6001600160a01b03868116825285811660208301528416604082015260a0606082018190526000906136d790830185612d87565b8281036080840152612cb98185612d87565b6001600160a01b0386811682528516602082015260a06040820181905260009061371590830186612d87565b82810360608401526137278186612d87565b90508281036080840152612cb981856128f2565b60006020828403121561374d57600080fd5b81516128d28161289f565b600060033d11156137715760046000803e5060005160e01c5b90565b600060443d10156137825790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156137b157505050505090565b82850191508151818111156137c95750505050505090565b843d87010160208285010111156137e35750505050505090565b6137f2602082860101876129ed565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061387f908301846128f2565b97965050505050505056fea2646970667358221220cf140f171ac2d5ea9a23d7d808cffff11645eee9fe1e63f3531c56345a29b58364736f6c63430008130033", + "nonce": "0x2d", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x4b490b6e1c0322cb15f1b35ca622e6b5740414e350846483ce215bf9741be21c", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0x3d0894B2aAfDD3A03092351F19d6F5c3EaA01475", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x28a433", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61239f80620000ee6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80638fd1101c11610104578063b81155b5116100a2578063df3d053b11610071578063df3d053b14610452578063ef1103d614610465578063f837232014610478578063fa3550671461048157600080fd5b8063b81155b5146103da578063cfc5a0c014610417578063d518b7ff1461042c578063d547741f1461043f57600080fd5b8063a217fddf116100de578063a217fddf14610383578063a626f5731461038b578063aa29f45e146103b4578063b08805a5146103c757600080fd5b80638fd1101c1461034a57806391d148541461035d5780639ab29f2b1461037057600080fd5b8063485cc9551161017157806378c5195e1161014b57806378c5195e146102fe57806387260f19146103115780638a69614e146103245780638c72c54e1461033757600080fd5b8063485cc955146102be5780636ce10ab6146102d1578063754b377c146102e457600080fd5b80632f2ff15d116101ad5780632f2ff15d1461026e57806336568abe146102835780633d695c521461029657806342f1e879146102a957600080fd5b806301ffc9a7146101d45780631d3b405a146101fc578063248a9ca31461023d575b600080fd5b6101e76101e2366004611a9a565b610494565b60405190151581526020015b60405180910390f35b61022561020a366004611ac4565b6098602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b61026061024b366004611ac4565b60009081526065602052604090206001015490565b6040519081526020016101f3565b61028161027c366004611af2565b6104cb565b005b610281610291366004611af2565b6104f5565b6102816102a4366004611b6d565b610578565b61026060008051602061234a83398151915281565b6102816102cc366004611bae565b6105bc565b6102816102df366004611bdc565b610718565b6102ec600181565b60405160ff90911681526020016101f3565b61026061030c366004611af2565b6107aa565b61028161031f366004611c1d565b6107d8565b610281610332366004611ac4565b61087b565b609754610225906001600160a01b031681565b610281610358366004611c88565b610888565b6101e761036b366004611af2565b6108d3565b61026061037e366004611af2565b6108fe565b610260600081565b610225610399366004611ac4565b6099602052600090815260409020546001600160a01b031681565b6102816103c2366004611af2565b610935565b6102816103d5366004611cce565b610957565b6103ed6103e8366004611ac4565b610979565b604080516001600160801b03948516815292841660208401529216918101919091526060016101f3565b61026060008051602061232a83398151915281565b61028161043a366004611cf0565b6109ae565b61028161044d366004611af2565b610a93565b610281610460366004611d92565b610ab8565b610281610473366004611dcb565b610b5c565b6102606103e881565b61028161048f366004611e16565b610bba565b60006001600160e01b03198216637965db0b60e01b14806104c557506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000828152606560205260409020600101546104e681610c03565b6104f08383610c0d565b505050565b6001600160a01b038116331461056a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6105748282610c93565b5050565b8060005b818110156105b6576105a684848381811061059957610599611e61565b9050602002013533610cfa565b6105af81611e8d565b905061057c565b50505050565b600054610100900460ff16158080156105dc5750600054600160ff909116105b806105f65750303b1580156105f6575060005460ff166001145b6106595760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610561565b6000805460ff19166001179055801561067c576000805461ff0019166101001790555b610684610d1e565b61068f600084610c0d565b61069a600033610c93565b6106b260008051602061234a83398151915283610c0d565b609780546001600160a01b0319166001600160a01b03851617905580156104f0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a1505050565b60008051602061234a83398151915261073081610c03565b60006107456001600160a01b03851684610d8b565b90508061076557604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260986020908152604080832080546001600160a01b039687166001600160a01b03199182161790915560999092529091208054929093169116179055565b6000828152609960205260408120546107ce906001600160a01b0316308585610eb0565b9695505050505050565b60008051602061232a8339815191526107f081610c03565b818460005b828110156108715760005b828110156108605761085089898381811061081d5761081d611e61565b9050602002013588888581811061083657610836611e61565b905060200201602081019061084b9190611ea6565b610cfa565b61085981611e8d565b9050610800565b5061086a81611e8d565b90506107f5565b5050505050505050565b6108858133610cfa565b50565b60008051602061234a8339815191526108a081610c03565b6108b685846108b16103e886611ec3565b610f5f565b6108cc84846108c76103e886611ec3565b611010565b5050505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600082815260996020526040812054610922906001600160a01b0316308585610eb0565b506001600160801b031695945050505050565b60008051602061232a83398151915261094d81610c03565b6104f08383610cfa565b60008051602061234a83398151915261096f81610c03565b6104f08383611066565b600081815260996020526040812054819081906109a0906001600160a01b031630866110e8565b919790965090945092505050565b60008051602061234a8339815191526109c681610c03565b838281146109e757604051632627b42d60e11b815260040160405180910390fd5b60005b81811015610a8857610a3589888884818110610a0857610a08611e61565b905060200201356103e8888886818110610a2457610a24611e61565b905060200201356108b19190611ec3565b610a7888888884818110610a4b57610a4b611e61565b905060200201356103e8888886818110610a6757610a67611e61565b905060200201356108c79190611ec3565b610a8181611e8d565b90506109ea565b505050505050505050565b600082815260656020526040902060010154610aae81610c03565b6104f08383610c93565b6000610ac381610c03565b81610b5257600084815260996020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610b2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b509190611eda565b505b6105b68484611066565b60008051602061232a833981519152610b7481610c03565b8260005b81811015610bb257610ba2868683818110610b9557610b95611e61565b9050602002013585610cfa565b610bab81611e8d565b9050610b78565b505050505050565b60008051602061232a833981519152610bd281610c03565b60005b828110156108cc57610bf38585858481811061083657610836611e61565b610bfc81611e8d565b9050610bd5565b610885813361118e565b610c1782826108d3565b6105745760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610c4f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610c9d82826108d3565b156105745760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000828152609960205260409020546104f0906001600160a01b03163084846111e7565b600054610100900460ff16610d895760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610561565b565b6000806000610d9985611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610dd757610dd7611ef7565b6040519080825280601f01601f191660200182016040528015610e01576020820181803683370190505b50604051602401610e1493929190611f5d565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610e5d93925090600401611f96565b6000604051808303816000875af1158015610e7c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ea49190810190611fdd565b50600195945050505050565b6000806000806000610ec1896114d9565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa158015610f28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4c91906120a5565b929c919b50995090975095505050505050565b6001600160a01b038316610f7257505050565b600082815260996020526040812054610f96906001600160a01b0316308587610eb0565b506001600160801b03169250505060008282610fb291906120f5565b11610fe157600083815260996020526040902054610fdb906001600160a01b031630858761163e565b506105b6565b6108cc8385610ff085856120f5565b6000878152609960205260409020546001600160a01b031692919061168c565b6001600160a01b03831661102357505050565b600082815260996020526040812054611047906001600160a01b0316308587610eb0565b506001600160801b0316925050506108cc83858484610ff09190612108565b60008281526099602052604081205461108a906001600160a01b0316308585611719565b506000848152609960205260409020549091506110b1906001600160a01b031684836117be565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910161070b565b60008060008060006110f9886114d9565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117c919061211b565b94509450945094505093509350935093565b61119882826108d3565b610574576111a5816118e6565b6111b08360206118f8565b6040516020016111c1929190612171565b60408051601f198184030181529082905262461bcd60e51b8252610561916004016121e6565b60008060006111f587611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b0381111561123557611235611ef7565b6040519080825280601f01601f19166020018201604052801561125f576020820181803683370190505b506040516024016112749594939291906121f9565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b03191682526112bd93925090600401611f96565b6000604051808303816000875af11580156112dc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113049190810190611fdd565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b0381166114a8576001600160a01b0382166113d757826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa1580156113b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d49190612239565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa15801561143b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061145f9190612239565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b0382166114be576114be612256565b6001600160a01b0381166114d4576114d4612256565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b0381166114a8576001600160a01b03821661159e57826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611577573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159b9190612239565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa158015611602573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116269190612239565b90506001600160a01b0382166114be576114be612256565b600080600061164c87611312565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b0381111561123557611235611ef7565b600080600061169a87611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b038111156116da576116da611ef7565b6040519080825280601f01601f191660200182016040528015611704576020820181803683370190505b5060405160240161127495949392919061226c565b6000806000611727876114d9565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa15801561178c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b091906122b3565b925092505094509492505050565b60008060006117cc86611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b0381111561180b5761180b611ef7565b6040519080825280601f01601f191660200182016040528015611835576020820181803683370190505b5060405160240161184994939291906122df565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261189293925090600401611f96565b6000604051808303816000875af11580156118b1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118d99190810190611fdd565b5060019695505050505050565b60606104c56001600160a01b03831660145b60606000611907836002611ec3565b611912906002612108565b6001600160401b0381111561192957611929611ef7565b6040519080825280601f01601f191660200182016040528015611953576020820181803683370190505b509050600360fc1b8160008151811061196e5761196e611e61565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061199d5761199d611e61565b60200101906001600160f81b031916908160001a90535060006119c1846002611ec3565b6119cc906001612108565b90505b6001811115611a44576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611a0057611a00611e61565b1a60f81b828281518110611a1657611a16611e61565b60200101906001600160f81b031916908160001a90535060049490941c93611a3d81612312565b90506119cf565b508315611a935760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610561565b9392505050565b600060208284031215611aac57600080fd5b81356001600160e01b031981168114611a9357600080fd5b600060208284031215611ad657600080fd5b5035919050565b6001600160a01b038116811461088557600080fd5b60008060408385031215611b0557600080fd5b823591506020830135611b1781611add565b809150509250929050565b60008083601f840112611b3457600080fd5b5081356001600160401b03811115611b4b57600080fd5b6020830191508360208260051b8501011115611b6657600080fd5b9250929050565b60008060208385031215611b8057600080fd5b82356001600160401b03811115611b9657600080fd5b611ba285828601611b22565b90969095509350505050565b60008060408385031215611bc157600080fd5b8235611bcc81611add565b91506020830135611b1781611add565b600080600060608486031215611bf157600080fd5b8335611bfc81611add565b92506020840135611c0c81611add565b929592945050506040919091013590565b60008060008060408587031215611c3357600080fd5b84356001600160401b0380821115611c4a57600080fd5b611c5688838901611b22565b90965094506020870135915080821115611c6f57600080fd5b50611c7c87828801611b22565b95989497509550505050565b60008060008060808587031215611c9e57600080fd5b8435611ca981611add565b93506020850135611cb981611add565b93969395505050506040820135916060013590565b60008060408385031215611ce157600080fd5b50508035926020909101359150565b60008060008060008060808789031215611d0957600080fd5b8635611d1481611add565b95506020870135611d2481611add565b945060408701356001600160401b0380821115611d4057600080fd5b611d4c8a838b01611b22565b90965094506060890135915080821115611d6557600080fd5b50611d7289828a01611b22565b979a9699509497509295939492505050565b801515811461088557600080fd5b600080600060608486031215611da757600080fd5b83359250602084013591506040840135611dc081611d84565b809150509250925092565b600080600060408486031215611de057600080fd5b83356001600160401b03811115611df657600080fd5b611e0286828701611b22565b9094509250506020840135611dc081611add565b600080600060408486031215611e2b57600080fd5b8335925060208401356001600160401b03811115611e4857600080fd5b611e5486828701611b22565b9497909650939450505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611e9f57611e9f611e77565b5060010190565b600060208284031215611eb857600080fd5b8135611a9381611add565b80820281158282048414176104c5576104c5611e77565b600060208284031215611eec57600080fd5b8151611a9381611d84565b634e487b7160e01b600052604160045260246000fd5b60005b83811015611f28578181015183820152602001611f10565b50506000910152565b60008151808452611f49816020860160208601611f0d565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090611f8d90830184611f31565b95945050505050565b6001600160a01b0383168152606060208201819052600090611fba90830184611f31565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b600060208284031215611fef57600080fd5b81516001600160401b038082111561200657600080fd5b818401915084601f83011261201a57600080fd5b81518181111561202c5761202c611ef7565b604051601f8201601f19908116603f0116810190838211818310171561205457612054611ef7565b8160405282815287602084870101111561206d57600080fd5b61207e836020830160208801611f0d565b979650505050505050565b80516001600160801b03811681146120a057600080fd5b919050565b600080600080608085870312156120bb57600080fd5b84516120c681611d84565b60208601519094506120d781611d84565b92506120e560408601612089565b6060959095015193969295505050565b818103818111156104c5576104c5611e77565b808201808211156104c5576104c5611e77565b6000806000806080858703121561213157600080fd5b845161213c81611d84565b935061214a60208601612089565b925061215860408601612089565b915061216660608601612089565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516121a9816017850160208801611f0d565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516121da816028840160208801611f0d565b01602801949350505050565b602081526000611a936020830184611f31565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061207e90830184611f31565b60006020828403121561224b57600080fd5b8151611a9381611add565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061207e90830184611f31565b600080604083850312156122c657600080fd5b825191506122d660208401612089565b90509250929050565b60018060a01b038516815263ffffffff841660208201528260408201526080606082015260006107ce6080830184611f31565b60008161232157612321611e77565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca264697066735822122092b0e50e4ae8020bc01793d015d9fc0503a0b339b20e0e5a4bd6ef82f54b2ec764736f6c63430008130033", + "nonce": "0x2e", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x619548bf2c4339c93f27bb592784cd39578ee81898f3e85ddc69ec08386730a7", + "transactionType": "CREATE", + "contractName": "ProxyAdmin", + "contractAddress": "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x8c2c2", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6106938061007e6000396000f3fe60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b506000606082860101526060601f19601f83011685010192505050939250505056fea26469706673582212204b6dc172c150b90d1b55e46cf1f95c1fb2c0fab05349712f70d4eb252200427064736f6c63430008130033", + "nonce": "0x2f", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x2920bf71b82f7656a597c4cce623764267b3e10b4657bc03342543677df6c1e7", + "transactionType": "CREATE", + "contractName": "ABVerifier", + "contractAddress": "0x6b5a2c172FDdcc15f0404c83E70F2f8ee54B2b23", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x16da46", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611366806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80637adaeebe116100ad578063cbc6512411610071578063cbc6512414610267578063ccac2c131461027a578063cfc5a0c01461028d578063d547741f146102b4578063ed9ec8c6146102c757600080fd5b80637adaeebe1461021357806391d1485414610226578063a217fddf14610239578063af92c48a14610241578063c4d66de81461025457600080fd5b806336568abe116100f457806336568abe146101bf5780633a774256146101d2578063437a0de9146101e55780634a96535b146101f8578063627cdcb91461020b57600080fd5b806301ffc9a7146101265780631180b5531461014e578063248a9ca3146101795780632f2ff15d146101aa575b600080fd5b610139610134366004610f66565b6102da565b60405190151581526020015b60405180910390f35b61016161015c366004610fac565b610311565b6040516001600160a01b039091168152602001610145565b61019c610187366004610fc7565b60009081526065602052604090206001015490565b604051908152602001610145565b6101bd6101b8366004610fe0565b61031c565b005b6101bd6101cd366004610fe0565b610346565b6101396101e036600461104e565b6103c9565b609754610161906001600160a01b031681565b6101bd610206366004610fac565b6104b0565b6101bd6104de565b6101bd610221366004610fac565b6104ff565b610139610234366004610fe0565b61052d565b61019c600081565b61013961024f3660046110a1565b610558565b6101bd610262366004610fac565b610661565b610139610275366004611119565b6107bf565b6101bd610288366004611188565b6108c0565b61019c7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b6101bd6102c2366004610fe0565b610919565b609854610161906001600160a01b031681565b60006001600160e01b03198216637965db0b60e01b148061030b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061030b8261093e565b60008281526065602052604090206001015461033781610970565b610341838361097d565b505050565b6001600160a01b03811633146103bb5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6103c58282610a03565b5050565b609a546040516001600160601b0319606086901b1660208201526034810191909152600090819060540160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061049684848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6098546001600160a01b0390811691161495945050505050565b60006104bb81610970565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006104e981610970565b609a600081546104f8906111c8565b9091555050565b600061050a81610970565b50609880546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000806105648761093e565b6040516001600160601b031960608b811b821660208401528a901b166034820152604881018890526068810187905290915060009060880160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061063f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6001600160a01b0316826001600160a01b031614925050509695505050505050565b600054610100900460ff16158080156106815750600054600160ff909116105b8061069b5750303b15801561069b575060005460ff166001145b6106fe5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016103b2565b6000805460ff191660011790558015610721576000805461ff0019166101001790555b6001600160a01b03821661074857604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b03841617905561076b610a8e565b610776600033610afb565b80156103c5576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6000806107cb8661093e565b6040516001600160601b031960608a811b8216602084015289901b1660348201526048810187905290915060009060680160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061089f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6001600160a01b0316826001600160a01b0316149250505095945050505050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e6108ea81610970565b506001600160a01b03918216600090815260996020526040902080546001600160a01b03191691909216179055565b60008281526065602052604090206001015461093481610970565b6103418383610a03565b6097546001600160a01b038281166000908152609960205260409020549181169116801561096a578091505b50919050565b61097a8133610b05565b50565b610987828261052d565b6103c55760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556109bf3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610a0d828261052d565b156103c55760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610a798585610b5e565b91509150610a8681610ba3565b509392505050565b600054610100900460ff16610af95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016103b2565b565b6103c5828261097d565b610b0f828261052d565b6103c557610b1c81610ced565b610b27836020610cff565b604051602001610b38929190611205565b60408051601f198184030181529082905262461bcd60e51b82526103b29160040161127a565b6000808251604103610b945760208301516040840151606085015160001a610b8887828585610ea2565b94509450505050610b9c565b506000905060025b9250929050565b6000816004811115610bb757610bb76112ad565b03610bbf5750565b6001816004811115610bd357610bd36112ad565b03610c205760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016103b2565b6002816004811115610c3457610c346112ad565b03610c815760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016103b2565b6003816004811115610c9557610c956112ad565b0361097a5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016103b2565b606061030b6001600160a01b03831660145b60606000610d0e8360026112c3565b610d199060026112da565b67ffffffffffffffff811115610d3157610d316112ed565b6040519080825280601f01601f191660200182016040528015610d5b576020820181803683370190505b509050600360fc1b81600081518110610d7657610d76611303565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610da557610da5611303565b60200101906001600160f81b031916908160001a9053506000610dc98460026112c3565b610dd49060016112da565b90505b6001811115610e4c576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610e0857610e08611303565b1a60f81b828281518110610e1e57610e1e611303565b60200101906001600160f81b031916908160001a90535060049490941c93610e4581611319565b9050610dd7565b508315610e9b5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016103b2565b9392505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610ed95750600090506003610f5d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610f2d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610f5657600060019250925050610f5d565b9150600090505b94509492505050565b600060208284031215610f7857600080fd5b81356001600160e01b031981168114610e9b57600080fd5b80356001600160a01b0381168114610fa757600080fd5b919050565b600060208284031215610fbe57600080fd5b610e9b82610f90565b600060208284031215610fd957600080fd5b5035919050565b60008060408385031215610ff357600080fd5b8235915061100360208401610f90565b90509250929050565b60008083601f84011261101e57600080fd5b50813567ffffffffffffffff81111561103657600080fd5b602083019150836020828501011115610b9c57600080fd5b60008060006040848603121561106357600080fd5b61106c84610f90565b9250602084013567ffffffffffffffff81111561108857600080fd5b6110948682870161100c565b9497909650939450505050565b60008060008060008060a087890312156110ba57600080fd5b6110c387610f90565b95506110d160208801610f90565b94506040870135935060608701359250608087013567ffffffffffffffff8111156110fb57600080fd5b61110789828a0161100c565b979a9699509497509295939492505050565b60008060008060006080868803121561113157600080fd5b61113a86610f90565b945061114860208701610f90565b935060408601359250606086013567ffffffffffffffff81111561116b57600080fd5b6111778882890161100c565b969995985093965092949392505050565b6000806040838503121561119b57600080fd5b6111a483610f90565b915061100360208401610f90565b634e487b7160e01b600052601160045260246000fd5b6000600182016111da576111da6111b2565b5060010190565b60005b838110156111fc5781810151838201526020016111e4565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161123d8160178501602088016111e1565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161126e8160288401602088016111e1565b01602801949350505050565b60208152600082518060208401526112998160408501602087016111e1565b601f01601f19169190910160400192915050565b634e487b7160e01b600052602160045260246000fd5b808202811582820484141761030b5761030b6111b2565b8082018082111561030b5761030b6111b2565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081611328576113286111b2565b50600019019056fea2646970667358221220f66200a430c167ad4f1ae625723f35c23be8862c0bf9cba0bfccd975c30aafc764736f6c63430008130033", + "nonce": "0x30", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xb2ac168904f539873ef863f58a86efd1320b64c90593f780fe9b3506b588bd79", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x4A33991281e9E093D313855F7fcb54010415A895", + "function": null, + "arguments": [ + "0x6b5a2c172FDdcc15f0404c83E70F2f8ee54B2b23", + "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "0xc4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xcddbb", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c65640000000000000000000000006b5a2c172fddcc15f0404c83e70f2f8ee54b2b230000000000000000000000008cb15fb45a80a7ba5b393a60969e6d79520103c900000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x31", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x63ba3813fb764a76a6fffcee8d1189d2e6e5d7917ce225ea92a11642d7955857", + "transactionType": "CREATE", + "contractName": null, + "contractAddress": "0x02e9F15e49B58be57cedEF40F251fe2043f8Ae90", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x1b48fb", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611770806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638353b91911610104578063b9138580116100a2578063d547741f11610071578063d547741f146104fd578063da35a26f14610510578063dd3394aa14610523578063f0f442601461053657600080fd5b8063b9138580146104a4578063b9d47392146104c4578063c70eae8c146104d7578063cb9685ba146104ea57600080fd5b806391d14854116100de57806391d1485414610463578063977f82ba14610476578063a217fddf14610489578063ae98d8571461049157600080fd5b80638353b919146104115780638392767d146104245780638ffaa1401461043757600080fd5b80632f2ff15d1161017c5780635eb399681161014b5780635eb399681461036a578063608ebea1146103ac57806369ca69a5146103de57806371ef9a93146103fe57600080fd5b80632f2ff15d146102f357806336568abe1461030657806341859ac8146103195780635134b49a1461034757600080fd5b80630a4d85cd116101b85780630a4d85cd14610265578063145f8dd4146102a657806319742e6c146102bb578063248a9ca3146102d057600080fd5b806301ffc9a7146101df57806304a0fb1714610207578063069a9b641461023c575b600080fd5b6101f26101ed36600461123e565b610549565b60405190151581526020015b60405180910390f35b61022e7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee2781565b6040519081526020016101fe565b61022e61024a366004611284565b6001600160a01b031660009081526099602052604090205490565b61028e610273366004611284565b6098602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b61022e60008051602061171b83398151915281565b6102ce6102c936600461129f565b610580565b005b61022e6102de3660046112d9565b60009081526065602052604090206001015490565b6102ce6103013660046112f2565b6105da565b6102ce6103143660046112f2565b610604565b6101f2610327366004611284565b6001600160a01b0390811660009081526098602052604090205416151590565b6101f26103553660046112d9565b609c6020526000908152604090205460ff1681565b61037d6103783660046112d9565b610687565b6040805194855260208501939093526001600160a01b03918216928401929092521660608201526080016101fe565b6103bf6103ba36600461131e565b6106cd565b604080516001600160a01b0390931683526020830191909152016101fe565b61022e6103ec3660046112d9565b609d6020526000908152604090205481565b6102ce61040c36600461131e565b61072b565b6102ce61041f366004611348565b610790565b609b5461028e906001600160a01b031681565b61028e610445366004611284565b6001600160a01b039081166000908152609860205260409020541690565b6101f26104713660046112f2565b610864565b6102ce610484366004611384565b61088f565b61022e600081565b61022e61049f366004611348565b610937565b61022e6104b2366004611284565b60996020526000908152604090205481565b6102ce6104d23660046113d9565b610b2b565b6102ce6104e5366004611284565b610b8c565b6102ce6104f83660046114b4565b610bce565b6102ce61050b3660046112f2565b610c2d565b6102ce61051e3660046112f2565b610c52565b6102ce61053136600461154a565b610dc3565b6102ce610544366004611284565b610e6f565b60006001600160e01b03198216637965db0b60e01b148061057a57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061058b81610e9d565b6127108211156105ae57604051632627b42d60e11b815260040160405180910390fd5b506000918252609c60209081526040808420805460ff191695151595909517909455609d905291902055565b6000828152606560205260409020600101546105f581610e9d565b6105ff8383610eaa565b505050565b6001600160a01b03811633146106795760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6106838282610f30565b5050565b609a818154811061069757600080fd5b60009182526020909120600490910201805460018201546002830154600390930154919350916001600160a01b03908116911684565b6000818152609c6020526040812054819060ff16156106fb57506000828152609d6020526040902054610716565b506001600160a01b0383166000908152609960205260409020545b609b546001600160a01b031694909350915050565b600061073681610e9d565b6001600160a01b038316600081815260996020908152604091829020859055815192835282018490527fc1c540da095b5b6d54738e18568e3c832ae9d1a26f1abeb3e69efde2d4fd6ec291015b60405180910390a1505050565b7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee276107ba81610e9d565b6001600160a01b0384811660009081526098602052604090205416156107f35760405163515567cf60e01b815260040160405180910390fd5b6001600160a01b03848116600081815260986020908152604080832080546001600160a01b0319169589169586179055609982529182902086905590519182527fb0c28f4dd5b8aa95e332651d07f6930a2f9d46ae2bc4bfa73e2f33e478a1269b910160405180910390a250505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60008051602061171b8339815191526108a781610e9d565b6001600160a01b03868116600090815260986020526040908190205490516323f4440760e21b81528783166004820152868316602482015260448101869052606481018590529116908190638fd1101c906084015b600060405180830381600087803b15801561091657600080fd5b505af115801561092a573d6000803e3d6000fd5b5050505050505050505050565b600060008051602061171b83398151915261095181610e9d565b610959610f97565b6040805160808101825282815260208082018781526001600160a01b038a81168486018181523360608701818152609a8054600181018255600091909152975160049098027f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be481019890985594517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be588015590517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be6870180549185166001600160a01b031992831617905593517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be790960180549690931695909316949094179055835190815290810191909152919350849184917f5cbfe9cceabf50e9fcfff39e46cd47b1667ad148238648e99aee4fa0e1193d43910160405180910390a36001600160a01b03841615610b23576001600160a01b0385811660009081526098602052604090819020549051633670855b60e11b8152336004820152868316602482015260448101859052911690636ce10ab690606401600060405180830381600087803b158015610b0a57600080fd5b505af1158015610b1e573d6000803e3d6000fd5b505050505b509392505050565b6000610b3681610e9d565b6001600160a01b038216610b5d57604051632627b42d60e11b815260040160405180910390fd5b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee27610bb681610e9d565b61068360008051602061171b83398151915283610eaa565b60008051602061171b833981519152610be681610e9d565b6001600160a01b038087166000908152609860205260409081902054905163d518b7ff60e01b8152911690819063d518b7ff906108fc9089908990899089906004016115a3565b600082815260656020526040902060010154610c4881610e9d565b6105ff8383610f30565b600054610100900460ff1615808015610c725750600054600160ff909116105b80610c8c5750303b158015610c8c575060005460ff166001145b610cef5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610670565b6000805460ff191660011790558015610d12576000805461ff0019166101001790555b610d1a610fb9565b610d25600033611026565b6097839055609b80546001600160a01b0319166001600160a01b03841690811790915560408051918252602082018590527fa4888636278c973bcfd5eca8f86d67bf0c980edbf1740721c6f229b0421ae1e2910160405180910390a180156105ff576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610783565b6000610dce81610e9d565b6001600160a01b038085166000908152609860205260409020541680610e0757604051632627b42d60e11b815260040160405180910390fd5b60405163b08805a560e01b815260048101859052602481018490526001600160a01b0382169063b08805a590604401600060405180830381600087803b158015610e5057600080fd5b505af1158015610e64573d6000803e3d6000fd5b505050505050505050565b6000610e7a81610e9d565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b610ea78133611030565b50565b610eb48282610864565b6106835760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610eec3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610f3a8282610864565b156106835760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b609a54609754600091610fa9916115f7565b610fb49060016115f7565b905090565b600054610100900460ff166110245760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610670565b565b6106838282610eaa565b61103a8282610864565b6106835761104781611089565b61105283602061109b565b60405160200161106392919061162e565b60408051601f198184030181529082905262461bcd60e51b8252610670916004016116a3565b606061057a6001600160a01b03831660145b606060006110aa8360026116d6565b6110b59060026115f7565b67ffffffffffffffff8111156110cd576110cd611403565b6040519080825280601f01601f1916602001820160405280156110f7576020820181803683370190505b509050600360fc1b81600081518110611112576111126116ed565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611141576111416116ed565b60200101906001600160f81b031916908160001a90535060006111658460026116d6565b6111709060016115f7565b90505b60018111156111e8576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106111a4576111a46116ed565b1a60f81b8282815181106111ba576111ba6116ed565b60200101906001600160f81b031916908160001a90535060049490941c936111e181611703565b9050611173565b5083156112375760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610670565b9392505050565b60006020828403121561125057600080fd5b81356001600160e01b03198116811461123757600080fd5b80356001600160a01b038116811461127f57600080fd5b919050565b60006020828403121561129657600080fd5b61123782611268565b6000806000606084860312156112b457600080fd5b833580151581146112c457600080fd5b95602085013595506040909401359392505050565b6000602082840312156112eb57600080fd5b5035919050565b6000806040838503121561130557600080fd5b8235915061131560208401611268565b90509250929050565b6000806040838503121561133157600080fd5b61133a83611268565b946020939093013593505050565b60008060006060848603121561135d57600080fd5b61136684611268565b925061137460208501611268565b9150604084013590509250925092565b600080600080600060a0868803121561139c57600080fd5b6113a586611268565b94506113b360208701611268565b93506113c160408701611268565b94979396509394606081013594506080013592915050565b600080604083850312156113ec57600080fd5b6113f583611268565b915061131560208401611268565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261142a57600080fd5b8135602067ffffffffffffffff8083111561144757611447611403565b8260051b604051601f19603f8301168101818110848211171561146c5761146c611403565b60405293845285810183019383810192508785111561148a57600080fd5b83870191505b848210156114a957813583529183019190830190611490565b979650505050505050565b600080600080600060a086880312156114cc57600080fd5b6114d586611268565b94506114e360208701611268565b93506114f160408701611268565b9250606086013567ffffffffffffffff8082111561150e57600080fd5b61151a89838a01611419565b9350608088013591508082111561153057600080fd5b5061153d88828901611419565b9150509295509295909350565b60008060006060848603121561155f57600080fd5b6112c484611268565b600081518084526020808501945080840160005b838110156115985781518752958201959082019060010161157c565b509495945050505050565b6001600160a01b038581168252841660208201526080604082018190526000906115cf90830185611568565b82810360608401526114a98185611568565b634e487b7160e01b600052601160045260246000fd5b8082018082111561057a5761057a6115e1565b60005b8381101561162557818101518382015260200161160d565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161166681601785016020880161160a565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161169781602884016020880161160a565b01602801949350505050565b60208152600082518060208401526116c281604085016020870161160a565b601f01601f19169190910160400192915050565b808202811582820484141761057a5761057a6115e1565b634e487b7160e01b600052603260045260246000fd5b600081611712576117126115e1565b50600019019056fe40a5c770eee7730548a6335e1f372e76bf4759f6fda1a932bd9cfc33106f0b4ca2646970667358221220ca2dc61d57487a62371bc74dd138bad9447ad75c86bac12783a70400e6327b7b64736f6c63430008130033", + "nonce": "0x32", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xd0661e501dc0fdcbae9a9f9f2d6b2a87894fd8ccaefd4e6175e483d926f9a1f1", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x7d4e9772AbE9EeB80df3d8c8Eec2A701f2CCA815", + "function": null, + "arguments": [ + "0x02e9F15e49B58be57cedEF40F251fe2043f8Ae90", + "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "0xda35a26f0000000000000000000000000000000000000000000000000000000000007530000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xd560f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656400000000000000000000000002e9f15e49b58be57cedef40f251fe2043f8ae900000000000000000000000008cb15fb45a80a7ba5b393a60969e6d79520103c900000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044da35a26f0000000000000000000000000000000000000000000000000000000000007530000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x33", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x28db13f624577b52cd6049a73fee1ee7c050955808c367a512d09240606deb21", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0xAa9E17Fa13c9EA49D2289A18DC6D840F221690Eb", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x1c20a8", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611836806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80636b7e394911610104578063a217fddf116100a2578063d57f966b11610071578063d57f966b146103f3578063d8f4b6fd146103fc578063e442ac1814610411578063fdbda0ec1461042457600080fd5b8063a217fddf146103b0578063bdd2fe78146103b8578063cfc5a0c0146103cb578063d547741f146103e057600080fd5b8063832ca2f5116100de578063832ca2f5146103645780638d058ac81461037757806391d148541461038a5780639f1fb80d1461039d57600080fd5b80636b7e39491461032b5780636cc82b841461033e5780637d2405bb1461035157600080fd5b8063248a9ca3116101715780634128541c1161014b5780634128541c146102df5780634c7dfac3146102f2578063641254bd14610305578063678213491461031857600080fd5b8063248a9ca3146102885780632f2ff15d146102b957806336568abe146102cc57600080fd5b80631c8518c2116101ad5780631c8518c2146102245780631ce6e4441461024f5780631e5b368414610262578063229a8a821461027557600080fd5b806301ffc9a7146101d45780631459457a146101fc57806318c25d8a14610211575b600080fd5b6101e76101e2366004611348565b610457565b60405190151581526020015b60405180910390f35b61020f61020a366004611389565b61048e565b005b61020f61021f3660046113ee565b61060f565b609b54610237906001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b609a54610237906001600160a01b031681565b61020f610270366004611418565b61077f565b610237610283366004611418565b610831565b6102ab610296366004611418565b60009081526065602052604090206001015490565b6040519081526020016101f3565b61020f6102c7366004611431565b61084b565b61020f6102da366004611431565b610870565b609854610237906001600160a01b031681565b6101e761030036600461145d565b6108ee565b61020f61031336600461145d565b610908565b61020f610326366004611478565b610936565b61020f61033936600461145d565b6109d9565b609954610237906001600160a01b031681565b61020f61035f36600461145d565b610a09565b61020f61037236600461145d565b610a37565b610237610385366004611418565b610a65565b6101e7610398366004611431565b610a7f565b61020f6103ab366004611557565b610aaa565b6102ab600081565b609c54610237906001600160a01b031681565b6102ab6000805160206117c183398151915281565b61020f6103ee366004611431565b610bd4565b6102ab609d5481565b6102ab6000805160206117e183398151915281565b61020f61041f3660046115bd565b610bf9565b610437610432366004611418565b610ca5565b604080516001600160a01b039384168152929091166020830152016101f3565b60006001600160e01b03198216637965db0b60e01b148061048857506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156104ae5750600054600160ff909116105b806104c85750303b1580156104c8575060005460ff166001145b6105305760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610553576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d556105b6610cde565b6105c1600033610d4b565b8015610607576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b6000805160206117c183398151915261062781610d55565b61271082111561064a57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661067157604051632627b42d60e11b815260040160405180910390fd5b609c54600090610689906001600160a01b0316610d62565b60985460405163485cc95560e01b81526001600160a01b038781166004830152918216602482015291925082169063485cc95590604401600060405180830381600087803b1580156106da57600080fd5b505af11580156106ee573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b91991506064015b600060405180830381600087803b15801561074957600080fd5b505af115801561075d573d6000803e3d6000fd5b505050506107796000805160206117e18339815191528561084b565b50505050565b6000805160206117e183398151915261079781610d55565b609b546000906107b0906001600160a01b031684610dfc565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561080a57600080fd5b505af115801561081e573d6000803e3d6000fd5b5050505061082c8133610e99565b505050565b609a54600090610488906001600160a01b03168330610ff1565b60008281526065602052604090206001015461086681610d55565b61082c838361104d565b6001600160a01b03811633146108e05760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610527565b6108ea82826110d3565b5050565b60006104886000805160206117e183398151915283610a7f565b600061091381610d55565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b6000805160206117c183398151915261094e81610d55565b61271082111561097157604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03841661099857604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b9199060640161072f565b6000805160206117c18339815191526109f181610d55565b6108ea6000805160206117e183398151915283610bd4565b6000610a1481610d55565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610a4281610d55565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b609b54600090610488906001600160a01b03168330610ff1565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000805160206117c1833981519152610ac281610d55565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610b0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b309190611602565b610b4d57604051634f3bd42760e01b815260040160405180910390fd5b6000610b598684610dfc565b60985460995460405163197a393d60e21b81529293506001600160a01b03808516936365e8e4f493610b98938b93918216929116908a90600401611674565b600060405180830381600087803b158015610bb257600080fd5b505af1158015610bc6573d6000803e3d6000fd5b505050506106078186610e99565b600082815260656020526040902060010154610bef81610d55565b61082c83836110d3565b6000805160206117e1833981519152610c1181610d55565b609a54600090610c2a906001600160a01b031684610dfc565b60985460995460405163197a393d60e21b81529293506001600160a01b03808516936365e8e4f493610c69933393918216929116908a90600401611674565b600060405180830381600087803b158015610c8357600080fd5b505af1158015610c97573d6000803e3d6000fd5b505050506107798133610e99565b60978181548110610cb557600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff16610d495760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610527565b565b6108ea828261104d565b610d5f813361113a565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b038116610df75760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b6044820152606401610527565b919050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b0381166104885760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c65640000000000000000006044820152606401610527565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c90610f6f9085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b158015610f8957600080fd5b505af1158015610f9d573d6000803e3d6000fd5b50505050609d60008154610fb0906116c8565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6110578282610a7f565b6108ea5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561108f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6110dd8282610a7f565b156108ea5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6111448282610a7f565b6108ea5761115181611193565b61115c8360206111a5565b60405160200161116d9291906116e1565b60408051601f198184030181529082905262461bcd60e51b825261052791600401611756565b60606104886001600160a01b03831660145b606060006111b4836002611769565b6111bf906002611780565b67ffffffffffffffff8111156111d7576111d76114b4565b6040519080825280601f01601f191660200182016040528015611201576020820181803683370190505b509050600360fc1b8160008151811061121c5761121c611793565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061124b5761124b611793565b60200101906001600160f81b031916908160001a905350600061126f846002611769565b61127a906001611780565b90505b60018111156112f2576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106112ae576112ae611793565b1a60f81b8282815181106112c4576112c4611793565b60200101906001600160f81b031916908160001a90535060049490941c936112eb816117a9565b905061127d565b5083156113415760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610527565b9392505050565b60006020828403121561135a57600080fd5b81356001600160e01b03198116811461134157600080fd5b80356001600160a01b0381168114610df757600080fd5b600080600080600060a086880312156113a157600080fd5b6113aa86611372565b94506113b860208701611372565b93506113c660408701611372565b92506113d460608701611372565b91506113e260808701611372565b90509295509295909350565b6000806040838503121561140157600080fd5b61140a83611372565b946020939093013593505050565b60006020828403121561142a57600080fd5b5035919050565b6000806040838503121561144457600080fd5b8235915061145460208401611372565b90509250929050565b60006020828403121561146f57600080fd5b61134182611372565b60008060006060848603121561148d57600080fd5b61149684611372565b92506114a460208501611372565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126114db57600080fd5b813567ffffffffffffffff808211156114f6576114f66114b4565b604051601f8301601f19908116603f0116810190828211818310171561151e5761151e6114b4565b8160405283815286602085880101111561153757600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561156d57600080fd5b61157685611372565b935061158460208601611372565b9250604085013567ffffffffffffffff8111156115a057600080fd5b6115ac878288016114ca565b949793965093946060013593505050565b600080604083850312156115d057600080fd5b823567ffffffffffffffff8111156115e757600080fd5b6115f3858286016114ca565b95602094909401359450505050565b60006020828403121561161457600080fd5b8151801515811461134157600080fd5b60005b8381101561163f578181015183820152602001611627565b50506000910152565b60008151808452611660816020860160208601611624565b601f01601f19169290920160200192915050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190526000906116a890830184611648565b9695505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016116da576116da6116b2565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611719816017850160208801611624565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161174a816028840160208801611624565b01602801949350505050565b6020815260006113416020830184611648565b8082028115828204841417610488576104886116b2565b80820180821115610488576104886116b2565b634e487b7160e01b600052603260045260246000fd5b6000816117b8576117b86116b2565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220e8261c01885e610fa152a11d1ee93f6170146b932119b0773109f6e03291865064736f6c63430008130033", + "nonce": "0x34", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xc2e0e10570635c5cd0f57f148cfb64dc3ff963c828ee84d2b9387131c9e9f142", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xc8C36aea082ABaEC51029fe16Fc3e1641Ac213FD", + "function": null, + "arguments": [ + "0xAa9E17Fa13c9EA49D2289A18DC6D840F221690Eb", + "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "0x1459457a0000000000000000000000007d4e9772abe9eeb80df3d8c8eec2a701f2cca8150000000000000000000000004a33991281e9e093d313855f7fcb54010415a895000000000000000000000000eb7c4b1c64222a05958da577f1ffecde445eb2040000000000000000000000001e7b76cb83e6638c504e03a36bb69500457e86110000000000000000000000003d0894b2aafdd3a03092351f19d6f5c3eaa01475" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xeb66f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000aa9e17fa13c9ea49d2289a18dc6d840f221690eb0000000000000000000000008cb15fb45a80a7ba5b393a60969e6d79520103c9000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a41459457a0000000000000000000000007d4e9772abe9eeb80df3d8c8eec2a701f2cca8150000000000000000000000004a33991281e9e093d313855f7fcb54010415a895000000000000000000000000eb7c4b1c64222a05958da577f1ffecde445eb2040000000000000000000000001e7b76cb83e6638c504e03a36bb69500457e86110000000000000000000000003d0894b2aafdd3a03092351f19d6f5c3eaa0147500000000000000000000000000000000000000000000000000000000", + "nonce": "0x35", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xeaa22f6aa882f7c817abd8b4ba8de64d117777583c7ddbac075877e78a279df0", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x7d4e9772AbE9EeB80df3d8c8Eec2A701f2CCA815", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x7d4e9772abe9eeb80df3d8c8eec2a701f2cca815", + "gas": "0x14fbd", + "value": "0x0", + "data": "0x2f2ff15ddfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee27000000000000000000000000c8c36aea082abaec51029fe16fc3e1641ac213fd", + "nonce": "0x36", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x8a8b83817ffc875822092ffb23c66fb626b7e26e2acc7da4474a80e6aae6b73b", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xc8C36aea082ABaEC51029fe16Fc3e1641Ac213FD", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0xc8c36aea082abaec51029fe16fc3e1641ac213fd", + "gas": "0x14fcb", + "value": "0x0", + "data": "0x2f2ff15d2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "nonce": "0x37", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x9b116ab3cfc6755834eab7e7ea398ff41627ff596c26069caeb83a1988e80357", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x4A33991281e9E093D313855F7fcb54010415A895", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x4a33991281e9e093d313855f7fcb54010415a895", + "gas": "0x1213a", + "value": "0x0", + "data": "0x7adaeebe000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "nonce": "0x38", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [], + "libraries": [], + "pending": [ + "0xbcee3fd358fb73da57f394fb8cb7f044347edcc55642f05d75c2b2cd3afe63d8", + "0x666955695220123c2228f59ccebac46b0078c08d2c0b822aeacf4594afdcc442", + "0x4b490b6e1c0322cb15f1b35ca622e6b5740414e350846483ce215bf9741be21c", + "0x619548bf2c4339c93f27bb592784cd39578ee81898f3e85ddc69ec08386730a7", + "0x2920bf71b82f7656a597c4cce623764267b3e10b4657bc03342543677df6c1e7", + "0xb2ac168904f539873ef863f58a86efd1320b64c90593f780fe9b3506b588bd79", + "0x63ba3813fb764a76a6fffcee8d1189d2e6e5d7917ce225ea92a11642d7955857", + "0xd0661e501dc0fdcbae9a9f9f2d6b2a87894fd8ccaefd4e6175e483d926f9a1f1", + "0x28db13f624577b52cd6049a73fee1ee7c050955808c367a512d09240606deb21", + "0xc2e0e10570635c5cd0f57f148cfb64dc3ff963c828ee84d2b9387131c9e9f142", + "0xeaa22f6aa882f7c817abd8b4ba8de64d117777583c7ddbac075877e78a279df0", + "0x8a8b83817ffc875822092ffb23c66fb626b7e26e2acc7da4474a80e6aae6b73b", + "0x9b116ab3cfc6755834eab7e7ea398ff41627ff596c26069caeb83a1988e80357" + ], + "returns": {}, + "timestamp": 1698150988, + "chain": 5, + "multi": false, + "commit": "9a7b2c3" +} \ No newline at end of file diff --git a/broadcast/deploy-platform.s.sol/5/run-1698150989.json b/broadcast/deploy-platform.s.sol/5/run-1698150989.json new file mode 100644 index 0000000..bf3671b --- /dev/null +++ b/broadcast/deploy-platform.s.sol/5/run-1698150989.json @@ -0,0 +1,519 @@ +{ + "transactions": [ + { + "hash": "0xbcee3fd358fb73da57f394fb8cb7f044347edcc55642f05d75c2b2cd3afe63d8", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0xEb7C4B1c64222a05958da577f1FFeCDe445EB204", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x3251ab", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612c7380620000f46000396000f3fe60806040526004361061020f5760003560e01c806370a0823111610118578063a1db9782116100a0578063d5abeb011161006f578063d5abeb0114610622578063de7ecf8714610638578063e985e9c51461064e578063f2fde38b1461066e578063fe325e961461068e57600080fd5b8063a1db9782146105af578063a22cb465146105cf578063b88d4fde146105ef578063c87b56dd1461060257600080fd5b806384a0c766116100e757806384a0c7661461051c5780638c72c54e1461053c5780638da5cb5b1461055c5780639182ba971461057a57806395d89b411461059a57600080fd5b806370a08231146104ad578063715018a6146104cd578063731133e9146104e2578063754b377c146104f557600080fd5b806342842e0e1161019b57806365e8e4f41161016a57806365e8e4f4146103f557806366748e98146104155780636cc82b841461044d5780636dbdaae61461046d5780636f8b44b01461048d57600080fd5b806342842e0e1461036e5780634b1022621461038157806355f804b3146103b55780636352211e146103d557600080fd5b806318160ddd116101e257806318160ddd146102b857806323b872dd146102db5780632a778c9b146102ee5780632e37eef6146103045780634128541c1461034e57600080fd5b806301ffc9a71461021457806306fdde0314610249578063081812fc1461026b578063095ea7b3146102a3575b600080fd5b34801561022057600080fd5b5061023461022f3660046121e8565b6106a3565b60405190151581526020015b60405180910390f35b34801561025557600080fd5b5061025e6106b4565b6040516102409190612255565b34801561027757600080fd5b5061028b610286366004612268565b61074f565b6040516001600160a01b039091168152602001610240565b6102b66102b1366004612296565b61079c565b005b3480156102c457600080fd5b506102cd6107ac565b604051908152602001610240565b6102b66102e93660046122c2565b6107cc565b3480156102fa57600080fd5b506102cd60685481565b34801561031057600080fd5b5061032461031f366004612268565b6109d0565b6040805195865260208601949094529284019190915260608301521515608082015260a001610240565b34801561035a57600080fd5b5060655461028b906001600160a01b031681565b6102b661037c3660046122c2565b610a14565b34801561038d57600080fd5b506102cd7f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156103c157600080fd5b506102b66103d036600461234b565b610a34565b3480156103e157600080fd5b5061028b6103f0366004612268565b610a49565b34801561040157600080fd5b506102b6610410366004612417565b610a54565b34801561042157600080fd5b506102cd610430366004612296565b606c60209081526000928352604080842090915290825290205481565b34801561045957600080fd5b5060665461028b906001600160a01b031681565b34801561047957600080fd5b506102b6610488366004612268565b610cd9565b34801561049957600080fd5b506102b66104a8366004612268565b610ce6565b3480156104b957600080fd5b506102cd6104c836600461249f565b610d1b565b3480156104d957600080fd5b506102b6610d83565b6102b66104f03660046124bc565b610d97565b34801561050157600080fd5b5061050a600181565b60405160ff9091168152602001610240565b34801561052857600080fd5b506102b6610537366004612525565b610fbe565b34801561054857600080fd5b5060675461028b906001600160a01b031681565b34801561056857600080fd5b506033546001600160a01b031661028b565b34801561058657600080fd5b506102b66105953660046125aa565b611003565b3480156105a657600080fd5b5061025e6111ca565b3480156105bb57600080fd5b506102b66105ca366004612296565b611206565b3480156105db57600080fd5b506102b66105ea36600461262c565b61127f565b6102b66105fd366004612665565b6112fc565b34801561060e57600080fd5b5061025e61061d366004612268565b611346565b34801561062e57600080fd5b506102cd606d5481565b34801561064457600080fd5b506102cd60695481565b34801561065a57600080fd5b506102346106693660046126b8565b6114a1565b34801561067a57600080fd5b506102b661068936600461249f565b6114de565b34801561069a57600080fd5b506102b6611557565b60006106ae82611729565b92915050565b60606106be611777565b60020180546106cc906126e6565b80601f01602080910402602001604051908101604052809291908181526020018280546106f8906126e6565b80156107455780601f1061071a57610100808354040283529160200191610745565b820191906000526020600020905b81548152906001019060200180831161072857829003601f168201915b5050505050905090565b600061075a8261179b565b610777576040516333d1c03960e21b815260040160405180910390fd5b61077f611777565b60009283526006016020525060409020546001600160a01b031690565b6107a8828260016117e4565b5050565b600060016107b8611777565b600101546107c4611777565b540303919050565b60006107d782611899565b9050836001600160a01b0316816001600160a01b03161461080a5760405162a1148160e81b815260040160405180910390fd5b60008061081684611946565b9150915061083b81876108263390565b6001600160a01b039081169116811491141790565b6108665761084986336114a1565b61086657604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b03851661088d57604051633a954ecd60e21b815260040160405180910390fd5b61089a868686600161196e565b80156108a557600082555b6108ad611777565b6001600160a01b03871660009081526005919091016020526040902080546000190190556108d9611777565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610910611777565b60008681526004919091016020526040812091909155600160e11b84169003610986576001840161093f611777565b60008281526004919091016020526040812054900361098457610960611777565b5481146109845783610970611777565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45b505050505050565b606b81815481106109e057600080fd5b6000918252602090912060059091020180546001820154600283015460038401546004909401549294509092909160ff1685565b610a2f838383604051806020016040528060008152506112fc565b505050565b610a3c6119ff565b606a610a2f828483612760565b60006106ae82611899565b600080516020612c1e83398151915254610100900460ff16610a8957600080516020612c1e8339815191525460ff1615610a8d565b303b155b610b045760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b600080516020612c1e83398151915254610100900460ff16158015610b4057600080516020612c1e833981519152805461ffff19166101011790555b600054610100900460ff1615808015610b605750600054600160ff909116105b80610b7a5750303b158015610b7a575060005460ff166001145b610bdd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610afb565b6000805460ff191660011790558015610c00576000805461ff0019166101001790555b610c198360405180602001604052806000815250611a59565b610c21611a97565b610c2a86611ac6565b6000606855606580546001600160a01b038088166001600160a01b0319928316179092556066805487841690831617905560678054928916929091169190911790558015610cb2576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610cd257600080516020612c1e833981519152805461ff00191690555b5050505050565b610ce16119ff565b606955565b610cee6119ff565b610cf6611b18565b811015610d1657604051632627b42d60e11b815260040160405180910390fd5b606d55565b60006001600160a01b038216610d44576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03610d54611777565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b610d8b6119ff565b610d956000611ac6565b565b610da084611b2b565b610dbd576040516332f7a9d760e21b815260040160405180910390fd5b6000606b8581548110610dd257610dd261281f565b60009182526020918290206040805160a0810182526005909302909101805483526001810154938301939093526002830154908201526003820154606082015260049091015460ff1615156080820152606d5490915084610e31611b18565b610e3b919061284b565b1115610e5a576040516322eb5e9560e21b815260040160405180910390fd5b8060800151610ef9576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490610e9b90899030908a908990899060040161285e565b602060405180830381865afa158015610eb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edc91906128b2565b610ef9576040516352c973a760e01b815260040160405180910390fd5b60608101516001600160a01b0387166000908152606c60209081526040808320898452909152902054610f2d90869061284b565b1115610f4c57604051631d66b65960e11b815260040160405180910390fd5b838160400151610f5c91906128cf565b3414610f7b576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0386166000908152606c6020908152604080832088845290915281208054869290610fae90849061284b565b909155506109c890508685611bd2565b610fc66119ff565b606d87905586851115610fec57604051632627b42d60e11b815260040160405180910390fd5b610ffa868686868686611d1a565b50505050505050565b61100b6119ff565b606b541561101f5761101f606b600061217d565b600081815b818110156111905760008585838181106110405761104061281f565b905060a0020180360381019061105691906128e6565b9050838160000151108061106e575060208101518151115b1561108c57604051632627b42d60e11b815260040160405180910390fd5b606b805460018101825560009190915281517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b4600590920291820181905560208301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b583015560408301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b683015560608301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b78301556080909201517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b8909101805460ff191691151591909117905592506111898161295b565b9050611024565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6060606854600014611203576111e1606854611e32565b6040516020016111f19190612974565b60405160208183030381529060405290505b90565b61120e6119ff565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af115801561125b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a2f91906128b2565b80611288611777565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113078484846107cc565b6001600160a01b0383163b156113405761132384848484611ec4565b611340576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b60606113518261179b565b61136e57604051632627b42d60e11b815260040160405180910390fd5b6000611378611faf565b9050805160000361139a5760405180602001604052806000815250915061149b565b60408051600180825281830190925260009160208201818036833701905050905081600183516113ca919061299e565b815181106113da576113da61281f565b602001015160f81c60f81b816000815181106113f8576113f861281f565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161144891906129b1565b6040516020818303038152906040528051906020012003611494578261146d86611fbe565b60405160200161147e9291906129cd565b6040516020818303038152906040529350611498565b8293505b50505b50919050565b60006114ab611777565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6114e66119ff565b6001600160a01b03811661154b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610afb565b61155481611ac6565b50565b61155f6119ff565b60655460675460685460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156115b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115dd91906129fc565b90925090506001600160a01b03821661160957604051632627b42d60e11b815260040160405180910390fd5b47600061271061161984846128cf565b6116239190612a2a565b90506000611631828461299e565b905080156116af576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611686576040519150601f19603f3d011682016040523d82523d6000602084013e61168b565b606091505b50509050806116ad57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610cd2576067546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611702576040519150601f19603f3d011682016040523d82523d6000602084013e611707565b606091505b50509050806109c857604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b03198316148061175a57506380ac58cd60e01b6001600160e01b03198316145b806106ae5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b6000816001111580156117b557506117b1611777565b5482105b80156106ae5750600160e01b6117c9611777565b60008481526004919091016020526040902054161592915050565b60006117ef83610a49565b9050811561182e57336001600160a01b0382161461182e5761181181336114a1565b61182e576040516367d9dca160e11b815260040160405180910390fd5b83611837611777565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b60008160011161192d576118ab611777565b600083815260049190910160205260408120549150600160e01b8216900361192d5780600003611928576118dd611777565b5482106118fd57604051636f96cda160e11b815260040160405180910390fd5b611905611777565b6000199092016000818152600493909301602052604090922054905080156118fd575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611953611777565b60009485526006016020525050604090912080549092909150565b6069541561134057606554606754606854604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156119e157600080fd5b505af11580156119f5573d6000803e3d6000fd5b5050505050505050565b6033546001600160a01b03163314610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610afb565b600080516020612c1e83398151915254610100900460ff16611a8d5760405162461bcd60e51b8152600401610afb90612a4c565b6107a88282612002565b600054610100900460ff16611abe5760405162461bcd60e51b8152600401610afb90612aa0565b610d95612075565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006001611b24611777565b5403919050565b606b546000908210611b5057604051632627b42d60e11b815260040160405180910390fd5b6000606b8381548110611b6557611b6561281f565b60009182526020918290206040805160a08101825260059093029091018054808452600182015494840194909452600281015491830191909152600381015460608301526004015460ff161515608082015291504210801590611bcb5750428160200151115b9392505050565b6000611bdc611777565b5490506000829003611c015760405163b562e8dd60e01b815260040160405180910390fd5b611c0e600084838561196e565b680100000000000000018202611c22611777565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717611c5d611777565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b818114611ce757808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101611caf565b5081600003611d0857604051622e076360e81b815260040160405180910390fd5b80611d11611777565b5550610a2f9050565b60685415611d3b576040516302d1671b60e41b815260040160405180910390fd5b85158015611d5157506001600160a01b03831615155b80611d6d57506001600160a01b038316158015611d6d57508515155b15611d8b57604051632627b42d60e11b815260040160405180910390fd5b60655460675460405163ae98d85760e01b81526001600160a01b03918216600482015285821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015611de8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0c9190612aeb565b6068556069869055606a611e21828483612760565b5084156109c8576109c88486611bd2565b60606000611e3f836120a5565b60010190506000816001600160401b03811115611e5e57611e5e61238c565b6040519080825280601f01601f191660200182016040528015611e88576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611e9257509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290611ef9903390899088908890600401612b04565b6020604051808303816000875af1925050508015611f34575060408051601f3d908101601f19168201909252611f3191810190612b41565b60015b611f92573d808015611f62576040519150601f19603f3d011682016040523d82523d6000602084013e611f67565b606091505b508051600003611f8a576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606a80546106cc906126e6565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a900480611fd85750819003601f19909101908152919050565b600080516020612c1e83398151915254610100900460ff166120365760405162461bcd60e51b8152600401610afb90612a4c565b8161203f611777565b6002019061204d9082612b5e565b5080612057611777565b600301906120659082612b5e565b506001612070611777565b555050565b600054610100900460ff1661209c5760405162461bcd60e51b8152600401610afb90612aa0565b610d9533611ac6565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106120e45772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612110576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061212e57662386f26fc10000830492506010015b6305f5e1008310612146576305f5e100830492506008015b612710831061215a57612710830492506004015b6064831061216c576064830492506002015b600a83106106ae5760010192915050565b508054600082556005029060005260206000209081019061155491905b808211156121ce5760008082556001820181905560028201819055600382015560048101805460ff1916905560050161219a565b5090565b6001600160e01b03198116811461155457600080fd5b6000602082840312156121fa57600080fd5b8135611bcb816121d2565b60005b83811015612220578181015183820152602001612208565b50506000910152565b60008151808452612241816020860160208601612205565b601f01601f19169290920160200192915050565b602081526000611bcb6020830184612229565b60006020828403121561227a57600080fd5b5035919050565b6001600160a01b038116811461155457600080fd5b600080604083850312156122a957600080fd5b82356122b481612281565b946020939093013593505050565b6000806000606084860312156122d757600080fd5b83356122e281612281565b925060208401356122f281612281565b929592945050506040919091013590565b60008083601f84011261231557600080fd5b5081356001600160401b0381111561232c57600080fd5b60208301915083602082850101111561234457600080fd5b9250929050565b6000806020838503121561235e57600080fd5b82356001600160401b0381111561237457600080fd5b61238085828601612303565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b03808411156123bc576123bc61238c565b604051601f8501601f19908116603f011681019082821181831017156123e4576123e461238c565b816040528093508581528686860111156123fd57600080fd5b858560208301376000602087830101525050509392505050565b6000806000806080858703121561242d57600080fd5b843561243881612281565b9350602085013561244881612281565b9250604085013561245881612281565b915060608501356001600160401b0381111561247357600080fd5b8501601f8101871361248457600080fd5b612493878235602084016123a2565b91505092959194509250565b6000602082840312156124b157600080fd5b8135611bcb81612281565b6000806000806000608086880312156124d457600080fd5b85356124df81612281565b9450602086013593506040860135925060608601356001600160401b0381111561250857600080fd5b61251488828901612303565b969995985093965092949392505050565b600080600080600080600060c0888a03121561254057600080fd5b873596506020880135955060408801359450606088013561256081612281565b9350608088013561257081612281565b925060a08801356001600160401b0381111561258b57600080fd5b6125978a828b01612303565b989b979a50959850939692959293505050565b600080602083850312156125bd57600080fd5b82356001600160401b03808211156125d457600080fd5b818501915085601f8301126125e857600080fd5b8135818111156125f757600080fd5b86602060a08302850101111561260c57600080fd5b60209290920196919550909350505050565b801515811461155457600080fd5b6000806040838503121561263f57600080fd5b823561264a81612281565b9150602083013561265a8161261e565b809150509250929050565b6000806000806080858703121561267b57600080fd5b843561268681612281565b9350602085013561269681612281565b92506040850135915060608501356001600160401b0381111561247357600080fd5b600080604083850312156126cb57600080fd5b82356126d681612281565b9150602083013561265a81612281565b600181811c908216806126fa57607f821691505b60208210810361149b57634e487b7160e01b600052602260045260246000fd5b601f821115610a2f57600081815260208120601f850160051c810160208610156127415750805b601f850160051c820191505b818110156109c85782815560010161274d565b6001600160401b038311156127775761277761238c565b61278b8361278583546126e6565b8361271a565b6000601f8411600181146127bf57600085156127a75750838201355b600019600387901b1c1916600186901b178355610cd2565b600083815260209020601f19861690835b828110156127f057868501358255602094850194600190920191016127d0565b508682101561280d5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156106ae576106ae612835565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b6000602082840312156128c457600080fd5b8151611bcb8161261e565b80820281158282048414176106ae576106ae612835565b600060a082840312156128f857600080fd5b60405160a081018181106001600160401b038211171561291a5761291a61238c565b806040525082358152602083013560208201526040830135604082015260608301356060820152608083013561294f8161261e565b60808201529392505050565b60006001820161296d5761296d612835565b5060010190565b6120a160f11b815260008251612991816002850160208701612205565b9190910160020192915050565b818103818111156106ae576106ae612835565b600082516129c3818460208701612205565b9190910192915050565b600083516129df818460208801612205565b8351908301906129f3818360208801612205565b01949350505050565b60008060408385031215612a0f57600080fd5b8251612a1a81612281565b6020939093015192949293505050565b600082612a4757634e487b7160e01b600052601260045260246000fd5b500490565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600060208284031215612afd57600080fd5b5051919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612b3790830184612229565b9695505050505050565b600060208284031215612b5357600080fd5b8151611bcb816121d2565b81516001600160401b03811115612b7757612b7761238c565b612b8b81612b8584546126e6565b8461271a565b602080601f831160018114612bc05760008415612ba85750858301515b600019600386901b1c1916600185901b1785556109c8565b600085815260208120601f198616915b82811015612bef57888601518255948401946001909101908401612bd0565b5085821015612c0d5787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220210ddb125bf4095c0abcbd659a3c60649af2f481592701c6da57632ae48d0ba164736f6c63430008130033", + "nonce": "0x2c", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x666955695220123c2228f59ccebac46b0078c08d2c0b822aeacf4594afdcc442", + "transactionType": "CREATE", + "contractName": null, + "contractAddress": "0x1E7B76cB83E6638c504E03a36bB69500457E8611", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x3fd18d", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6138c080620000f46000396000f3fe6080604052600436106101c15760003560e01c806375794a3c116100f7578063c0c53b8b11610095578063f0c62a2f11610064578063f0c62a2f146105bd578063f242432a146105d0578063f2fde38b146105f0578063fe325e961461061057600080fd5b8063c0c53b8b14610521578063ca41ca6414610541578063e985e9c514610554578063ed01bda71461059d57600080fd5b80638da5cb5b116100d15780638da5cb5b146104a3578063a1db9782146104c1578063a22cb465146104e1578063ba0802ae1461050157600080fd5b806375794a3c1461040957806376744f501461041f5780638c72c54e1461048357600080fd5b80633b9ed29e116101645780634e1273f41161013e5780634e1273f4146103805780636cc82b84146103ad578063715018a6146103cd578063754b377c146103e257600080fd5b80633b9ed29e146102d85780633bd651a0146103165780634128541c1461034857600080fd5b80630f0e59ac116101a05780630f0e59ac14610256578063162094c4146102785780632eb2c2d61461029857806337da577c146102b857600080fd5b8062fdd58e146101c657806301ffc9a7146101f95780630e89341c14610229575b600080fd5b3480156101d257600080fd5b506101e66101e1366004612873565b610625565b6040519081526020015b60405180910390f35b34801561020557600080fd5b506102196102143660046128b5565b6106c0565b60405190151581526020016101f0565b34801561023557600080fd5b506102496102443660046128d9565b6106cb565b6040516101f09190612938565b34801561026257600080fd5b50610276610271366004612996565b610770565b005b34801561028457600080fd5b50610276610293366004612a76565b6107c6565b3480156102a457600080fd5b506102766102b3366004612b84565b6107ee565b3480156102c457600080fd5b506102766102d3366004612c31565b61083a565b3480156102e457600080fd5b506101e66102f3366004612c53565b60ce60209081526000938452604080852082529284528284209052825290205481565b34801561032257600080fd5b506103366103313660046128d9565b610889565b6040516101f096959493929190612c88565b34801561035457600080fd5b5060c954610368906001600160a01b031681565b6040516001600160a01b0390911681526020016101f0565b34801561038c57600080fd5b506103a061039b366004612cc5565b61094d565b6040516101f09190612dc2565b3480156103b957600080fd5b5060ca54610368906001600160a01b031681565b3480156103d957600080fd5b50610276610a76565b3480156103ee57600080fd5b506103f7600181565b60405160ff90911681526020016101f0565b34801561041557600080fd5b506101e660cc5481565b34801561042b57600080fd5b5061043f61043a366004612c31565b610a8a565b6040516101f09190600060a0820190508251825260208301516020830152604083015160408301526060830151606083015260808301511515608083015292915050565b34801561048f57600080fd5b5060cb54610368906001600160a01b031681565b3480156104af57600080fd5b506097546001600160a01b0316610368565b3480156104cd57600080fd5b506102766104dc366004612873565b610b1d565b3480156104ed57600080fd5b506102766104fc366004612de3565b610b96565b34801561050d57600080fd5b5061027661051c366004612e1c565b610ba5565b34801561052d57600080fd5b5061027661053c366004612e56565b610bb9565b61027661054f366004612ea1565b610d2f565b34801561056057600080fd5b5061021961056f366004612eec565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205460ff1690565b3480156105a957600080fd5b506102766105b8366004612f1a565b610fe2565b6102766105cb366004612f98565b611108565b3480156105dc57600080fd5b506102766105eb366004612fec565b611729565b3480156105fc57600080fd5b5061027661060b366004613054565b61176e565b34801561061c57600080fd5b506102766117e4565b60006001600160a01b0383166106955760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b60006106ba826119ba565b600081815260cd602052604090206006018054606091906106eb90613071565b80601f016020809104026020016040519081016040528092919081815260200182805461071790613071565b80156107645780601f1061073957610100808354040283529160200191610764565b820191906000526020600020905b81548152906001019060200180831161074757829003601f168201915b50505050509050919050565b610778611a0a565b8060005b818110156107c0576107b0848483818110610799576107996130ab565b90506020028101906107ab91906130c1565b611a64565b6107b9816130f7565b905061077c565b50505050565b6107ce611a0a565b600082815260cd602052604090206006016107e98282613156565b505050565b6001600160a01b03851633148061080a575061080a853361056f565b6108265760405162461bcd60e51b815260040161068c90613215565b6108338585858585611c4e565b5050505050565b610842611a0a565b600082815260cd602052604090206001015481101561087457604051632627b42d60e11b815260040160405180910390fd5b600091825260cd602052604090912060020155565b60cd6020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060060180546108ca90613071565b80601f01602080910402602001604051908101604052809291908181526020018280546108f690613071565b80156109435780601f1061091857610100808354040283529160200191610943565b820191906000526020600020905b81548152906001019060200180831161092657829003601f168201915b5050505050905086565b606081518351146109b25760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b606482015260840161068c565b600083516001600160401b038111156109cd576109cd6129d7565b6040519080825280602002602001820160405280156109f6578160200160208202803683370190505b50905060005b8451811015610a6e57610a41858281518110610a1a57610a1a6130ab565b6020026020010151858381518110610a3457610a346130ab565b6020026020010151610625565b828281518110610a5357610a536130ab565b6020908102919091010152610a67816130f7565b90506109fc565b509392505050565b610a7e611a0a565b610a886000611df3565b565b610abe6040518060a00160405280600081526020016000815260200160008152602001600081526020016000151581525090565b50600091825260cd602090815260408084209284526005909201815291819020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff161515608082015290565b610b25611a0a565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613263565b610ba1338383611e45565b5050565b610bad611a0a565b610bb681611a64565b50565b600054610100900460ff1615808015610bd95750600054600160ff909116105b80610bf35750303b158015610bf3575060005460ff166001145b610c565760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161068c565b6000805460ff191660011790558015610c79576000805461ff0019166101001790555b610c9160405180602001604052806000815250611f25565b610c99611f55565b610ca284611df3565b600160cc5560c980546001600160a01b038086166001600160a01b03199283161790925560ca805485841690831617905560cb80549287169290911691909117905580156107c0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b8035600090815260cd602052604081206003810154909103610d645760405163746a696560e01b815260040160405180910390fd5b6020808301356000908152600583018252604090819020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff1615156080820152610dc081611f84565b610ddd576040516332f7a9d760e21b815260040160405180910390fd5b816002015483604001358360010154610df69190613280565b1115610e15576040516322eb5e9560e21b815260040160405180910390fd5b8060800151610ec45760ca546001600160a01b031663af92c48a853086356020880135610e4560608a018a613293565b6040518763ffffffff1660e01b8152600401610e66969594939291906132d9565b602060405180830381865afa158015610e83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea79190613263565b610ec4576040516352c973a760e01b815260040160405180910390fd5b60608101516001600160a01b038516600090815260ce602090815260408083208735845282528083208288013584529091529081902054610f089186013590613280565b1115610f2757604051631d66b65960e11b815260040160405180910390fd5b82604001358160400151610f3b9190613335565b3414610f5a576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b038416600090815260ce60209081526040808320863584528252808320828701358452909152808220805491860135929091610f9e908490613280565b925050819055508260400135826001016000828254610fbd9190613280565b909155505060408051602081018252600081526107c091869186359187013590611fbe565b610fea611a0a565b600083815260cd602052604081209082815b818110156110c5576000868683818110611018576110186130ab565b905060a0020180360381019061102e919061334c565b90508381600001511080611046575060208101518151115b1561106457604051632627b42d60e11b815260040160405180910390fd5b60008281526005860160209081526040918290208351808255918401516001820155918301516002830155606083015160038301556080909201516004909101805460ff191691151591909117905592506110be816130f7565b9050610ffc565b50600383018490556040518681527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a1505050505050565b806000816001600160401b03811115611123576111236129d7565b60405190808252806020026020018201604052801561114c578160200160208202803683370190505b5090506000826001600160401b03811115611169576111696129d7565b604051908082528060200260200182016040528015611192578160200160208202803683370190505b509050600080805b858110156116e35760cd60008989848181106111b8576111b86130ab565b90506020028101906111ca91906133c1565b600001358152602001908152602001600020915081600301546000036112035760405163746a696560e01b815260040160405180910390fd5b60008260050160008a8a8581811061121d5761121d6130ab565b905060200281019061122f91906133c1565b6020908101358252818101929092526040908101600020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff1615156080820152905061128d81611f84565b6112aa576040516332f7a9d760e21b815260040160405180910390fd5b82600201548989848181106112c1576112c16130ab565b90506020028101906112d391906133c1565b6040013584600101546112e69190613280565b1115611305576040516322eb5e9560e21b815260040160405180910390fd5b806080015161141f5760ca546001600160a01b031663af92c48a8b308c8c87818110611333576113336130ab565b905060200281019061134591906133c1565b358d8d88818110611358576113586130ab565b905060200281019061136a91906133c1565b602001358e8e89818110611380576113806130ab565b905060200281019061139291906133c1565b6113a0906060810190613293565b6040518763ffffffff1660e01b81526004016113c1969594939291906132d9565b602060405180830381865afa1580156113de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114029190613263565b61141f576040516352c973a760e01b815260040160405180910390fd5b8060600151898984818110611436576114366130ab565b905060200281019061144891906133c1565b6001600160a01b038c16600090815260ce602052604080822092013591908c8c87818110611478576114786130ab565b905060200281019061148a91906133c1565b60000135815260200190815260200160002060008c8c878181106114b0576114b06130ab565b90506020028101906114c291906133c1565b602001358152602001908152602001600020546114df9190613280565b11156114fe57604051631d66b65960e11b815260040160405180910390fd5b888883818110611510576115106130ab565b905060200281019061152291906133c1565b6001600160a01b038b16600090815260ce602052604080822092013591908b8b86818110611552576115526130ab565b905060200281019061156491906133c1565b60000135815260200190815260200160002060008b8b8681811061158a5761158a6130ab565b905060200281019061159c91906133c1565b60200135815260200190815260200160002060008282546115bd9190613280565b9091555089905088838181106115d5576115d56130ab565b90506020028101906115e791906133c1565b604001358360010160008282546115fe9190613280565b909155508990508883818110611616576116166130ab565b905060200281019061162891906133c1565b60400135816040015161163b9190613335565b6116459085613280565b9350888883818110611659576116596130ab565b905060200281019061166b91906133c1565b60000135868381518110611681576116816130ab565b60200260200101818152505088888381811061169f5761169f6130ab565b90506020028101906116b191906133c1565b604001358583815181106116c7576116c76130ab565b6020908102919091010152506116dc816130f7565b905061119a565b50813414611704576040516318f4198360e21b815260040160405180910390fd5b61171f888585604051806020016040528060008152506120a9565b5050505050505050565b6001600160a01b0385163314806117455750611745853361056f565b6117615760405162461bcd60e51b815260040161068c90613215565b6108338585858585612204565b611776611a0a565b6001600160a01b0381166117db5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161068c565b610bb681611df3565b6117ec611a0a565b60c95460cb5460405163608ebea160e01b81526001600160a01b039182166004820152600060248201819052928392169063608ebea1906044016040805180830381865afa158015611842573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186691906133d7565b90925090506001600160a01b03821661189257604051632627b42d60e11b815260040160405180910390fd5b4760006127106118a28484613335565b6118ac9190613405565b905060006118ba8284613427565b90508015611938576000856001600160a01b03168260405160006040518083038185875af1925050503d806000811461190f576040519150601f19603f3d011682016040523d82523d6000602084013e611914565b606091505b505090508061193657604051631fa55c0760e11b815260040160405180910390fd5b505b81156108335760cb546040516000916001600160a01b03169084908381818185875af1925050503d806000811461198b576040519150601f19603f3d011682016040523d82523d6000602084013e611990565b606091505b50509050806119b257604051631fa55c0760e11b815260040160405180910390fd5b505050505050565b60006001600160e01b03198216636cdb3d1360e11b14806119eb57506001600160e01b031982166303a24d0760e21b145b806106ba57506301ffc9a760e01b6001600160e01b03198316146106ba565b6097546001600160a01b03163314610a885760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161068c565b6020810135158015611a8f57506000611a8360a0830160808401613054565b6001600160a01b031614155b80611ac057506000611aa760a0830160808401613054565b6001600160a01b0316148015611ac05750602081013515155b15611ade57604051632627b42d60e11b815260040160405180910390fd5b60cc54600090815260cd6020526040812060c95460cb549192916001600160a01b039182169163ae98d8579116611b1b60a0870160808801613054565b60cc546040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b96919061343a565b80835583356002840155602084013560048401559050611bb960a0840184613293565b6006840191611bc9919083613453565b50604083013515611c3457823560408401351115611bfa57604051632627b42d60e11b815260040160405180910390fd5b60408301356001830155611c34611c176080850160608601613054565b60cc54856040013560405180602001604052806000815250611fbe565b60cc8054906000611c44836130f7565b9190505550505050565b8151835114611c6f5760405162461bcd60e51b815260040161068c90613512565b6001600160a01b038416611c955760405162461bcd60e51b815260040161068c9061355a565b33611ca4818787878787612340565b60005b8451811015611d8d576000858281518110611cc457611cc46130ab565b602002602001015190506000858381518110611ce257611ce26130ab565b60209081029190910181015160008481526065835260408082206001600160a01b038e168352909352919091205490915081811015611d335760405162461bcd60e51b815260040161068c9061359f565b60008381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290611d72908490613280565b9250508190555050505080611d86906130f7565b9050611ca7565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611ddd9291906135e9565b60405180910390a46119b2818787878787612591565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b031603611eb85760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b606482015260840161068c565b6001600160a01b03838116600081815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b600054610100900460ff16611f4c5760405162461bcd60e51b815260040161068c90613617565b610bb6816126ec565b600054610100900460ff16611f7c5760405162461bcd60e51b815260040161068c90613617565b610a8861271c565b80516000908103611fa857604051632627b42d60e11b815260040160405180910390fd5b815142108015906106ba57505060200151421090565b6001600160a01b038416611fe45760405162461bcd60e51b815260040161068c90613662565b336000611ff08561274c565b90506000611ffd8561274c565b905061200e83600089858589612340565b60008681526065602090815260408083206001600160a01b038b16845290915281208054879290612040908490613280565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46120a083600089898989612797565b50505050505050565b6001600160a01b0384166120cf5760405162461bcd60e51b815260040161068c90613662565b81518351146120f05760405162461bcd60e51b815260040161068c90613512565b3361210081600087878787612340565b60005b845181101561219c5783818151811061211e5761211e6130ab565b60200260200101516065600087848151811061213c5761213c6130ab565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b0316815260200190815260200160002060008282546121849190613280565b90915550819050612194816130f7565b915050612103565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516121ed9291906135e9565b60405180910390a461083381600087878787612591565b6001600160a01b03841661222a5760405162461bcd60e51b815260040161068c9061355a565b3360006122368561274c565b905060006122438561274c565b9050612253838989858589612340565b60008681526065602090815260408083206001600160a01b038c168452909152902054858110156122965760405162461bcd60e51b815260040161068c9061359f565b60008781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906122d5908490613280565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612335848a8a8a8a8a612797565b505050505050505050565b8251600090815b818110156123a357600060cd6000888481518110612367576123676130ab565b6020026020010151815260200190815260200160002060040154111561239357612390836130f7565b92505b61239c816130f7565b9050612347565b506000826001600160401b038111156123be576123be6129d7565b6040519080825280602002602001820160405280156123e7578160200160208202803683370190505b5090506000836001600160401b03811115612404576124046129d7565b60405190808252806020026020018201604052801561242d578160200160208202803683370190505b5090506000805b8481101561251557600060cd60008b8481518110612454576124546130ab565b602002602001015181526020019081526020016000206004015411156125055760cd60008a838151811061248a5761248a6130ab565b60200260200101518152602001908152602001600020600001548483815181106124b6576124b66130ab565b6020026020010181815250508781815181106124d4576124d46130ab565b60200260200101518383815181106124ee576124ee6130ab565b6020908102919091010152612502826130f7565b91505b61250e816130f7565b9050612434565b5060c95460cb546040516365cb42dd60e11b81526001600160a01b039283169263cb9685ba92612552929116908e908e90899089906004016136a3565b600060405180830381600087803b15801561256c57600080fd5b505af1158015612580573d6000803e3d6000fd5b505050505050505050505050505050565b6001600160a01b0384163b156119b25760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906125d590899089908890889088906004016136e9565b6020604051808303816000875af1925050508015612610575060408051601f3d908101601f1916820190925261260d9181019061373b565b60015b6126bc5761261c613758565b806308c379a0036126555750612630613774565b8061263b5750612657565b8060405162461bcd60e51b815260040161068c9190612938565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e2d455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b606482015260840161068c565b6001600160e01b0319811663bc197c8160e01b146120a05760405162461bcd60e51b815260040161068c906137fd565b600054610100900460ff166127135760405162461bcd60e51b815260040161068c90613617565b610bb681612852565b600054610100900460ff166127435760405162461bcd60e51b815260040161068c90613617565b610a8833611df3565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612786576127866130ab565b602090810291909101015292915050565b6001600160a01b0384163b156119b25760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906127db9089908990889088908890600401613845565b6020604051808303816000875af1925050508015612816575060408051601f3d908101601f191682019092526128139181019061373b565b60015b6128225761261c613758565b6001600160e01b0319811663f23a6e6160e01b146120a05760405162461bcd60e51b815260040161068c906137fd565b6067610ba18282613156565b6001600160a01b0381168114610bb657600080fd5b6000806040838503121561288657600080fd5b82356128918161285e565b946020939093013593505050565b6001600160e01b031981168114610bb657600080fd5b6000602082840312156128c757600080fd5b81356128d28161289f565b9392505050565b6000602082840312156128eb57600080fd5b5035919050565b6000815180845260005b81811015612918576020818501810151868301820152016128fc565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006128d260208301846128f2565b60008083601f84011261295d57600080fd5b5081356001600160401b0381111561297457600080fd5b6020830191508360208260051b850101111561298f57600080fd5b9250929050565b600080602083850312156129a957600080fd5b82356001600160401b038111156129bf57600080fd5b6129cb8582860161294b565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b0381118282101715612a1257612a126129d7565b6040525050565b60006001600160401b03831115612a3257612a326129d7565b604051612a49601f8501601f1916602001826129ed565b809150838152848484011115612a5e57600080fd5b83836020830137600060208583010152509392505050565b60008060408385031215612a8957600080fd5b8235915060208301356001600160401b03811115612aa657600080fd5b8301601f81018513612ab757600080fd5b612ac685823560208401612a19565b9150509250929050565b60006001600160401b03821115612ae957612ae96129d7565b5060051b60200190565b600082601f830112612b0457600080fd5b81356020612b1182612ad0565b604051612b1e82826129ed565b83815260059390931b8501820192828101915086841115612b3e57600080fd5b8286015b84811015612b595780358352918301918301612b42565b509695505050505050565b600082601f830112612b7557600080fd5b6128d283833560208501612a19565b600080600080600060a08688031215612b9c57600080fd5b8535612ba78161285e565b94506020860135612bb78161285e565b935060408601356001600160401b0380821115612bd357600080fd5b612bdf89838a01612af3565b94506060880135915080821115612bf557600080fd5b612c0189838a01612af3565b93506080880135915080821115612c1757600080fd5b50612c2488828901612b64565b9150509295509295909350565b60008060408385031215612c4457600080fd5b50508035926020909101359150565b600080600060608486031215612c6857600080fd5b8335612c738161285e565b95602085013595506040909401359392505050565b86815285602082015284604082015283606082015282608082015260c060a08201526000612cb960c08301846128f2565b98975050505050505050565b60008060408385031215612cd857600080fd5b82356001600160401b0380821115612cef57600080fd5b818501915085601f830112612d0357600080fd5b81356020612d1082612ad0565b604051612d1d82826129ed565b83815260059390931b8501820192828101915089841115612d3d57600080fd5b948201945b83861015612d64578535612d558161285e565b82529482019490820190612d42565b96505086013592505080821115612d7a57600080fd5b50612ac685828601612af3565b600081518084526020808501945080840160005b83811015612db757815187529582019590820190600101612d9b565b509495945050505050565b6020815260006128d26020830184612d87565b8015158114610bb657600080fd5b60008060408385031215612df657600080fd5b8235612e018161285e565b91506020830135612e1181612dd5565b809150509250929050565b600060208284031215612e2e57600080fd5b81356001600160401b03811115612e4457600080fd5b820160c081850312156128d257600080fd5b600080600060608486031215612e6b57600080fd5b8335612e768161285e565b92506020840135612e868161285e565b91506040840135612e968161285e565b809150509250925092565b60008060408385031215612eb457600080fd5b8235612ebf8161285e565b915060208301356001600160401b03811115612eda57600080fd5b830160808186031215612e1157600080fd5b60008060408385031215612eff57600080fd5b8235612f0a8161285e565b91506020830135612e118161285e565b600080600060408486031215612f2f57600080fd5b8335925060208401356001600160401b0380821115612f4d57600080fd5b818601915086601f830112612f6157600080fd5b813581811115612f7057600080fd5b87602060a083028501011115612f8557600080fd5b6020830194508093505050509250925092565b600080600060408486031215612fad57600080fd5b8335612fb88161285e565b925060208401356001600160401b03811115612fd357600080fd5b612fdf8682870161294b565b9497909650939450505050565b600080600080600060a0868803121561300457600080fd5b853561300f8161285e565b9450602086013561301f8161285e565b9350604086013592506060860135915060808601356001600160401b0381111561304857600080fd5b612c2488828901612b64565b60006020828403121561306657600080fd5b81356128d28161285e565b600181811c9082168061308557607f821691505b6020821081036130a557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b6000823560be198336030181126130d757600080fd5b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b600060018201613109576131096130e1565b5060010190565b601f8211156107e957600081815260208120601f850160051c810160208610156131375750805b601f850160051c820191505b818110156119b257828155600101613143565b81516001600160401b0381111561316f5761316f6129d7565b6131838161317d8454613071565b84613110565b602080601f8311600181146131b857600084156131a05750858301515b600019600386901b1c1916600185901b1785556119b2565b600085815260208120601f198616915b828110156131e7578886015182559484019460019091019084016131c8565b50858210156132055787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252602e908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526d195c881bdc88185c1c1c9bdd995960921b606082015260800190565b60006020828403121561327557600080fd5b81516128d281612dd5565b808201808211156106ba576106ba6130e1565b6000808335601e198436030181126132aa57600080fd5b8301803591506001600160401b038211156132c457600080fd5b60200191503681900382131561298f57600080fd5b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905281018290526000828460c0840137600060c0848401015260c0601f19601f8501168301019050979650505050505050565b80820281158282048414176106ba576106ba6130e1565b600060a0828403121561335e57600080fd5b60405160a081018181106001600160401b0382111715613380576133806129d7565b80604052508235815260208301356020820152604083013560408201526060830135606082015260808301356133b581612dd5565b60808201529392505050565b60008235607e198336030181126130d757600080fd5b600080604083850312156133ea57600080fd5b82516133f58161285e565b6020939093015192949293505050565b60008261342257634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106ba576106ba6130e1565b60006020828403121561344c57600080fd5b5051919050565b6001600160401b0383111561346a5761346a6129d7565b61347e836134788354613071565b83613110565b6000601f8411600181146134b2576000851561349a5750838201355b600019600387901b1c1916600186901b178355610833565b600083815260209020601f19861690835b828110156134e357868501358255602094850194600190920191016134c3565b50868210156135005760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b6040815260006135fc6040830185612d87565b828103602084015261360e8185612d87565b95945050505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b6001600160a01b03868116825285811660208301528416604082015260a0606082018190526000906136d790830185612d87565b8281036080840152612cb98185612d87565b6001600160a01b0386811682528516602082015260a06040820181905260009061371590830186612d87565b82810360608401526137278186612d87565b90508281036080840152612cb981856128f2565b60006020828403121561374d57600080fd5b81516128d28161289f565b600060033d11156137715760046000803e5060005160e01c5b90565b600060443d10156137825790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156137b157505050505090565b82850191508151818111156137c95750505050505090565b843d87010160208285010111156137e35750505050505090565b6137f2602082860101876129ed565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061387f908301846128f2565b97965050505050505056fea2646970667358221220cf140f171ac2d5ea9a23d7d808cffff11645eee9fe1e63f3531c56345a29b58364736f6c63430008130033", + "nonce": "0x2d", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x4b490b6e1c0322cb15f1b35ca622e6b5740414e350846483ce215bf9741be21c", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0x3d0894B2aAfDD3A03092351F19d6F5c3EaA01475", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x28a433", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61239f80620000ee6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80638fd1101c11610104578063b81155b5116100a2578063df3d053b11610071578063df3d053b14610452578063ef1103d614610465578063f837232014610478578063fa3550671461048157600080fd5b8063b81155b5146103da578063cfc5a0c014610417578063d518b7ff1461042c578063d547741f1461043f57600080fd5b8063a217fddf116100de578063a217fddf14610383578063a626f5731461038b578063aa29f45e146103b4578063b08805a5146103c757600080fd5b80638fd1101c1461034a57806391d148541461035d5780639ab29f2b1461037057600080fd5b8063485cc9551161017157806378c5195e1161014b57806378c5195e146102fe57806387260f19146103115780638a69614e146103245780638c72c54e1461033757600080fd5b8063485cc955146102be5780636ce10ab6146102d1578063754b377c146102e457600080fd5b80632f2ff15d116101ad5780632f2ff15d1461026e57806336568abe146102835780633d695c521461029657806342f1e879146102a957600080fd5b806301ffc9a7146101d45780631d3b405a146101fc578063248a9ca31461023d575b600080fd5b6101e76101e2366004611a9a565b610494565b60405190151581526020015b60405180910390f35b61022561020a366004611ac4565b6098602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b61026061024b366004611ac4565b60009081526065602052604090206001015490565b6040519081526020016101f3565b61028161027c366004611af2565b6104cb565b005b610281610291366004611af2565b6104f5565b6102816102a4366004611b6d565b610578565b61026060008051602061234a83398151915281565b6102816102cc366004611bae565b6105bc565b6102816102df366004611bdc565b610718565b6102ec600181565b60405160ff90911681526020016101f3565b61026061030c366004611af2565b6107aa565b61028161031f366004611c1d565b6107d8565b610281610332366004611ac4565b61087b565b609754610225906001600160a01b031681565b610281610358366004611c88565b610888565b6101e761036b366004611af2565b6108d3565b61026061037e366004611af2565b6108fe565b610260600081565b610225610399366004611ac4565b6099602052600090815260409020546001600160a01b031681565b6102816103c2366004611af2565b610935565b6102816103d5366004611cce565b610957565b6103ed6103e8366004611ac4565b610979565b604080516001600160801b03948516815292841660208401529216918101919091526060016101f3565b61026060008051602061232a83398151915281565b61028161043a366004611cf0565b6109ae565b61028161044d366004611af2565b610a93565b610281610460366004611d92565b610ab8565b610281610473366004611dcb565b610b5c565b6102606103e881565b61028161048f366004611e16565b610bba565b60006001600160e01b03198216637965db0b60e01b14806104c557506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000828152606560205260409020600101546104e681610c03565b6104f08383610c0d565b505050565b6001600160a01b038116331461056a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6105748282610c93565b5050565b8060005b818110156105b6576105a684848381811061059957610599611e61565b9050602002013533610cfa565b6105af81611e8d565b905061057c565b50505050565b600054610100900460ff16158080156105dc5750600054600160ff909116105b806105f65750303b1580156105f6575060005460ff166001145b6106595760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610561565b6000805460ff19166001179055801561067c576000805461ff0019166101001790555b610684610d1e565b61068f600084610c0d565b61069a600033610c93565b6106b260008051602061234a83398151915283610c0d565b609780546001600160a01b0319166001600160a01b03851617905580156104f0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a1505050565b60008051602061234a83398151915261073081610c03565b60006107456001600160a01b03851684610d8b565b90508061076557604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260986020908152604080832080546001600160a01b039687166001600160a01b03199182161790915560999092529091208054929093169116179055565b6000828152609960205260408120546107ce906001600160a01b0316308585610eb0565b9695505050505050565b60008051602061232a8339815191526107f081610c03565b818460005b828110156108715760005b828110156108605761085089898381811061081d5761081d611e61565b9050602002013588888581811061083657610836611e61565b905060200201602081019061084b9190611ea6565b610cfa565b61085981611e8d565b9050610800565b5061086a81611e8d565b90506107f5565b5050505050505050565b6108858133610cfa565b50565b60008051602061234a8339815191526108a081610c03565b6108b685846108b16103e886611ec3565b610f5f565b6108cc84846108c76103e886611ec3565b611010565b5050505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600082815260996020526040812054610922906001600160a01b0316308585610eb0565b506001600160801b031695945050505050565b60008051602061232a83398151915261094d81610c03565b6104f08383610cfa565b60008051602061234a83398151915261096f81610c03565b6104f08383611066565b600081815260996020526040812054819081906109a0906001600160a01b031630866110e8565b919790965090945092505050565b60008051602061234a8339815191526109c681610c03565b838281146109e757604051632627b42d60e11b815260040160405180910390fd5b60005b81811015610a8857610a3589888884818110610a0857610a08611e61565b905060200201356103e8888886818110610a2457610a24611e61565b905060200201356108b19190611ec3565b610a7888888884818110610a4b57610a4b611e61565b905060200201356103e8888886818110610a6757610a67611e61565b905060200201356108c79190611ec3565b610a8181611e8d565b90506109ea565b505050505050505050565b600082815260656020526040902060010154610aae81610c03565b6104f08383610c93565b6000610ac381610c03565b81610b5257600084815260996020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610b2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b509190611eda565b505b6105b68484611066565b60008051602061232a833981519152610b7481610c03565b8260005b81811015610bb257610ba2868683818110610b9557610b95611e61565b9050602002013585610cfa565b610bab81611e8d565b9050610b78565b505050505050565b60008051602061232a833981519152610bd281610c03565b60005b828110156108cc57610bf38585858481811061083657610836611e61565b610bfc81611e8d565b9050610bd5565b610885813361118e565b610c1782826108d3565b6105745760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610c4f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610c9d82826108d3565b156105745760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000828152609960205260409020546104f0906001600160a01b03163084846111e7565b600054610100900460ff16610d895760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610561565b565b6000806000610d9985611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610dd757610dd7611ef7565b6040519080825280601f01601f191660200182016040528015610e01576020820181803683370190505b50604051602401610e1493929190611f5d565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610e5d93925090600401611f96565b6000604051808303816000875af1158015610e7c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ea49190810190611fdd565b50600195945050505050565b6000806000806000610ec1896114d9565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa158015610f28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4c91906120a5565b929c919b50995090975095505050505050565b6001600160a01b038316610f7257505050565b600082815260996020526040812054610f96906001600160a01b0316308587610eb0565b506001600160801b03169250505060008282610fb291906120f5565b11610fe157600083815260996020526040902054610fdb906001600160a01b031630858761163e565b506105b6565b6108cc8385610ff085856120f5565b6000878152609960205260409020546001600160a01b031692919061168c565b6001600160a01b03831661102357505050565b600082815260996020526040812054611047906001600160a01b0316308587610eb0565b506001600160801b0316925050506108cc83858484610ff09190612108565b60008281526099602052604081205461108a906001600160a01b0316308585611719565b506000848152609960205260409020549091506110b1906001600160a01b031684836117be565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910161070b565b60008060008060006110f9886114d9565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117c919061211b565b94509450945094505093509350935093565b61119882826108d3565b610574576111a5816118e6565b6111b08360206118f8565b6040516020016111c1929190612171565b60408051601f198184030181529082905262461bcd60e51b8252610561916004016121e6565b60008060006111f587611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b0381111561123557611235611ef7565b6040519080825280601f01601f19166020018201604052801561125f576020820181803683370190505b506040516024016112749594939291906121f9565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b03191682526112bd93925090600401611f96565b6000604051808303816000875af11580156112dc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113049190810190611fdd565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b0381166114a8576001600160a01b0382166113d757826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa1580156113b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d49190612239565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa15801561143b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061145f9190612239565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b0382166114be576114be612256565b6001600160a01b0381166114d4576114d4612256565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b0381166114a8576001600160a01b03821661159e57826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611577573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159b9190612239565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa158015611602573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116269190612239565b90506001600160a01b0382166114be576114be612256565b600080600061164c87611312565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b0381111561123557611235611ef7565b600080600061169a87611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b038111156116da576116da611ef7565b6040519080825280601f01601f191660200182016040528015611704576020820181803683370190505b5060405160240161127495949392919061226c565b6000806000611727876114d9565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa15801561178c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b091906122b3565b925092505094509492505050565b60008060006117cc86611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b0381111561180b5761180b611ef7565b6040519080825280601f01601f191660200182016040528015611835576020820181803683370190505b5060405160240161184994939291906122df565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261189293925090600401611f96565b6000604051808303816000875af11580156118b1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118d99190810190611fdd565b5060019695505050505050565b60606104c56001600160a01b03831660145b60606000611907836002611ec3565b611912906002612108565b6001600160401b0381111561192957611929611ef7565b6040519080825280601f01601f191660200182016040528015611953576020820181803683370190505b509050600360fc1b8160008151811061196e5761196e611e61565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061199d5761199d611e61565b60200101906001600160f81b031916908160001a90535060006119c1846002611ec3565b6119cc906001612108565b90505b6001811115611a44576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611a0057611a00611e61565b1a60f81b828281518110611a1657611a16611e61565b60200101906001600160f81b031916908160001a90535060049490941c93611a3d81612312565b90506119cf565b508315611a935760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610561565b9392505050565b600060208284031215611aac57600080fd5b81356001600160e01b031981168114611a9357600080fd5b600060208284031215611ad657600080fd5b5035919050565b6001600160a01b038116811461088557600080fd5b60008060408385031215611b0557600080fd5b823591506020830135611b1781611add565b809150509250929050565b60008083601f840112611b3457600080fd5b5081356001600160401b03811115611b4b57600080fd5b6020830191508360208260051b8501011115611b6657600080fd5b9250929050565b60008060208385031215611b8057600080fd5b82356001600160401b03811115611b9657600080fd5b611ba285828601611b22565b90969095509350505050565b60008060408385031215611bc157600080fd5b8235611bcc81611add565b91506020830135611b1781611add565b600080600060608486031215611bf157600080fd5b8335611bfc81611add565b92506020840135611c0c81611add565b929592945050506040919091013590565b60008060008060408587031215611c3357600080fd5b84356001600160401b0380821115611c4a57600080fd5b611c5688838901611b22565b90965094506020870135915080821115611c6f57600080fd5b50611c7c87828801611b22565b95989497509550505050565b60008060008060808587031215611c9e57600080fd5b8435611ca981611add565b93506020850135611cb981611add565b93969395505050506040820135916060013590565b60008060408385031215611ce157600080fd5b50508035926020909101359150565b60008060008060008060808789031215611d0957600080fd5b8635611d1481611add565b95506020870135611d2481611add565b945060408701356001600160401b0380821115611d4057600080fd5b611d4c8a838b01611b22565b90965094506060890135915080821115611d6557600080fd5b50611d7289828a01611b22565b979a9699509497509295939492505050565b801515811461088557600080fd5b600080600060608486031215611da757600080fd5b83359250602084013591506040840135611dc081611d84565b809150509250925092565b600080600060408486031215611de057600080fd5b83356001600160401b03811115611df657600080fd5b611e0286828701611b22565b9094509250506020840135611dc081611add565b600080600060408486031215611e2b57600080fd5b8335925060208401356001600160401b03811115611e4857600080fd5b611e5486828701611b22565b9497909650939450505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611e9f57611e9f611e77565b5060010190565b600060208284031215611eb857600080fd5b8135611a9381611add565b80820281158282048414176104c5576104c5611e77565b600060208284031215611eec57600080fd5b8151611a9381611d84565b634e487b7160e01b600052604160045260246000fd5b60005b83811015611f28578181015183820152602001611f10565b50506000910152565b60008151808452611f49816020860160208601611f0d565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090611f8d90830184611f31565b95945050505050565b6001600160a01b0383168152606060208201819052600090611fba90830184611f31565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b600060208284031215611fef57600080fd5b81516001600160401b038082111561200657600080fd5b818401915084601f83011261201a57600080fd5b81518181111561202c5761202c611ef7565b604051601f8201601f19908116603f0116810190838211818310171561205457612054611ef7565b8160405282815287602084870101111561206d57600080fd5b61207e836020830160208801611f0d565b979650505050505050565b80516001600160801b03811681146120a057600080fd5b919050565b600080600080608085870312156120bb57600080fd5b84516120c681611d84565b60208601519094506120d781611d84565b92506120e560408601612089565b6060959095015193969295505050565b818103818111156104c5576104c5611e77565b808201808211156104c5576104c5611e77565b6000806000806080858703121561213157600080fd5b845161213c81611d84565b935061214a60208601612089565b925061215860408601612089565b915061216660608601612089565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516121a9816017850160208801611f0d565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516121da816028840160208801611f0d565b01602801949350505050565b602081526000611a936020830184611f31565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061207e90830184611f31565b60006020828403121561224b57600080fd5b8151611a9381611add565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061207e90830184611f31565b600080604083850312156122c657600080fd5b825191506122d660208401612089565b90509250929050565b60018060a01b038516815263ffffffff841660208201528260408201526080606082015260006107ce6080830184611f31565b60008161232157612321611e77565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca264697066735822122092b0e50e4ae8020bc01793d015d9fc0503a0b339b20e0e5a4bd6ef82f54b2ec764736f6c63430008130033", + "nonce": "0x2e", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x619548bf2c4339c93f27bb592784cd39578ee81898f3e85ddc69ec08386730a7", + "transactionType": "CREATE", + "contractName": "ProxyAdmin", + "contractAddress": "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x8c2c2", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6106938061007e6000396000f3fe60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b506000606082860101526060601f19601f83011685010192505050939250505056fea26469706673582212204b6dc172c150b90d1b55e46cf1f95c1fb2c0fab05349712f70d4eb252200427064736f6c63430008130033", + "nonce": "0x2f", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x2920bf71b82f7656a597c4cce623764267b3e10b4657bc03342543677df6c1e7", + "transactionType": "CREATE", + "contractName": "ABVerifier", + "contractAddress": "0x6b5a2c172FDdcc15f0404c83E70F2f8ee54B2b23", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x16da46", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611366806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80637adaeebe116100ad578063cbc6512411610071578063cbc6512414610267578063ccac2c131461027a578063cfc5a0c01461028d578063d547741f146102b4578063ed9ec8c6146102c757600080fd5b80637adaeebe1461021357806391d1485414610226578063a217fddf14610239578063af92c48a14610241578063c4d66de81461025457600080fd5b806336568abe116100f457806336568abe146101bf5780633a774256146101d2578063437a0de9146101e55780634a96535b146101f8578063627cdcb91461020b57600080fd5b806301ffc9a7146101265780631180b5531461014e578063248a9ca3146101795780632f2ff15d146101aa575b600080fd5b610139610134366004610f66565b6102da565b60405190151581526020015b60405180910390f35b61016161015c366004610fac565b610311565b6040516001600160a01b039091168152602001610145565b61019c610187366004610fc7565b60009081526065602052604090206001015490565b604051908152602001610145565b6101bd6101b8366004610fe0565b61031c565b005b6101bd6101cd366004610fe0565b610346565b6101396101e036600461104e565b6103c9565b609754610161906001600160a01b031681565b6101bd610206366004610fac565b6104b0565b6101bd6104de565b6101bd610221366004610fac565b6104ff565b610139610234366004610fe0565b61052d565b61019c600081565b61013961024f3660046110a1565b610558565b6101bd610262366004610fac565b610661565b610139610275366004611119565b6107bf565b6101bd610288366004611188565b6108c0565b61019c7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b6101bd6102c2366004610fe0565b610919565b609854610161906001600160a01b031681565b60006001600160e01b03198216637965db0b60e01b148061030b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061030b8261093e565b60008281526065602052604090206001015461033781610970565b610341838361097d565b505050565b6001600160a01b03811633146103bb5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6103c58282610a03565b5050565b609a546040516001600160601b0319606086901b1660208201526034810191909152600090819060540160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061049684848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6098546001600160a01b0390811691161495945050505050565b60006104bb81610970565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006104e981610970565b609a600081546104f8906111c8565b9091555050565b600061050a81610970565b50609880546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000806105648761093e565b6040516001600160601b031960608b811b821660208401528a901b166034820152604881018890526068810187905290915060009060880160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061063f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6001600160a01b0316826001600160a01b031614925050509695505050505050565b600054610100900460ff16158080156106815750600054600160ff909116105b8061069b5750303b15801561069b575060005460ff166001145b6106fe5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016103b2565b6000805460ff191660011790558015610721576000805461ff0019166101001790555b6001600160a01b03821661074857604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b03841617905561076b610a8e565b610776600033610afb565b80156103c5576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6000806107cb8661093e565b6040516001600160601b031960608a811b8216602084015289901b1660348201526048810187905290915060009060680160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061089f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6001600160a01b0316826001600160a01b0316149250505095945050505050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e6108ea81610970565b506001600160a01b03918216600090815260996020526040902080546001600160a01b03191691909216179055565b60008281526065602052604090206001015461093481610970565b6103418383610a03565b6097546001600160a01b038281166000908152609960205260409020549181169116801561096a578091505b50919050565b61097a8133610b05565b50565b610987828261052d565b6103c55760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556109bf3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610a0d828261052d565b156103c55760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610a798585610b5e565b91509150610a8681610ba3565b509392505050565b600054610100900460ff16610af95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016103b2565b565b6103c5828261097d565b610b0f828261052d565b6103c557610b1c81610ced565b610b27836020610cff565b604051602001610b38929190611205565b60408051601f198184030181529082905262461bcd60e51b82526103b29160040161127a565b6000808251604103610b945760208301516040840151606085015160001a610b8887828585610ea2565b94509450505050610b9c565b506000905060025b9250929050565b6000816004811115610bb757610bb76112ad565b03610bbf5750565b6001816004811115610bd357610bd36112ad565b03610c205760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016103b2565b6002816004811115610c3457610c346112ad565b03610c815760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016103b2565b6003816004811115610c9557610c956112ad565b0361097a5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016103b2565b606061030b6001600160a01b03831660145b60606000610d0e8360026112c3565b610d199060026112da565b67ffffffffffffffff811115610d3157610d316112ed565b6040519080825280601f01601f191660200182016040528015610d5b576020820181803683370190505b509050600360fc1b81600081518110610d7657610d76611303565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610da557610da5611303565b60200101906001600160f81b031916908160001a9053506000610dc98460026112c3565b610dd49060016112da565b90505b6001811115610e4c576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610e0857610e08611303565b1a60f81b828281518110610e1e57610e1e611303565b60200101906001600160f81b031916908160001a90535060049490941c93610e4581611319565b9050610dd7565b508315610e9b5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016103b2565b9392505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610ed95750600090506003610f5d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610f2d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610f5657600060019250925050610f5d565b9150600090505b94509492505050565b600060208284031215610f7857600080fd5b81356001600160e01b031981168114610e9b57600080fd5b80356001600160a01b0381168114610fa757600080fd5b919050565b600060208284031215610fbe57600080fd5b610e9b82610f90565b600060208284031215610fd957600080fd5b5035919050565b60008060408385031215610ff357600080fd5b8235915061100360208401610f90565b90509250929050565b60008083601f84011261101e57600080fd5b50813567ffffffffffffffff81111561103657600080fd5b602083019150836020828501011115610b9c57600080fd5b60008060006040848603121561106357600080fd5b61106c84610f90565b9250602084013567ffffffffffffffff81111561108857600080fd5b6110948682870161100c565b9497909650939450505050565b60008060008060008060a087890312156110ba57600080fd5b6110c387610f90565b95506110d160208801610f90565b94506040870135935060608701359250608087013567ffffffffffffffff8111156110fb57600080fd5b61110789828a0161100c565b979a9699509497509295939492505050565b60008060008060006080868803121561113157600080fd5b61113a86610f90565b945061114860208701610f90565b935060408601359250606086013567ffffffffffffffff81111561116b57600080fd5b6111778882890161100c565b969995985093965092949392505050565b6000806040838503121561119b57600080fd5b6111a483610f90565b915061100360208401610f90565b634e487b7160e01b600052601160045260246000fd5b6000600182016111da576111da6111b2565b5060010190565b60005b838110156111fc5781810151838201526020016111e4565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161123d8160178501602088016111e1565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161126e8160288401602088016111e1565b01602801949350505050565b60208152600082518060208401526112998160408501602087016111e1565b601f01601f19169190910160400192915050565b634e487b7160e01b600052602160045260246000fd5b808202811582820484141761030b5761030b6111b2565b8082018082111561030b5761030b6111b2565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081611328576113286111b2565b50600019019056fea2646970667358221220f66200a430c167ad4f1ae625723f35c23be8862c0bf9cba0bfccd975c30aafc764736f6c63430008130033", + "nonce": "0x30", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xb2ac168904f539873ef863f58a86efd1320b64c90593f780fe9b3506b588bd79", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x4A33991281e9E093D313855F7fcb54010415A895", + "function": null, + "arguments": [ + "0x6b5a2c172FDdcc15f0404c83E70F2f8ee54B2b23", + "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "0xc4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xcddbb", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c65640000000000000000000000006b5a2c172fddcc15f0404c83e70f2f8ee54b2b230000000000000000000000008cb15fb45a80a7ba5b393a60969e6d79520103c900000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x31", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x63ba3813fb764a76a6fffcee8d1189d2e6e5d7917ce225ea92a11642d7955857", + "transactionType": "CREATE", + "contractName": null, + "contractAddress": "0x02e9F15e49B58be57cedEF40F251fe2043f8Ae90", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x1b48fb", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611770806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638353b91911610104578063b9138580116100a2578063d547741f11610071578063d547741f146104fd578063da35a26f14610510578063dd3394aa14610523578063f0f442601461053657600080fd5b8063b9138580146104a4578063b9d47392146104c4578063c70eae8c146104d7578063cb9685ba146104ea57600080fd5b806391d14854116100de57806391d1485414610463578063977f82ba14610476578063a217fddf14610489578063ae98d8571461049157600080fd5b80638353b919146104115780638392767d146104245780638ffaa1401461043757600080fd5b80632f2ff15d1161017c5780635eb399681161014b5780635eb399681461036a578063608ebea1146103ac57806369ca69a5146103de57806371ef9a93146103fe57600080fd5b80632f2ff15d146102f357806336568abe1461030657806341859ac8146103195780635134b49a1461034757600080fd5b80630a4d85cd116101b85780630a4d85cd14610265578063145f8dd4146102a657806319742e6c146102bb578063248a9ca3146102d057600080fd5b806301ffc9a7146101df57806304a0fb1714610207578063069a9b641461023c575b600080fd5b6101f26101ed36600461123e565b610549565b60405190151581526020015b60405180910390f35b61022e7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee2781565b6040519081526020016101fe565b61022e61024a366004611284565b6001600160a01b031660009081526099602052604090205490565b61028e610273366004611284565b6098602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b61022e60008051602061171b83398151915281565b6102ce6102c936600461129f565b610580565b005b61022e6102de3660046112d9565b60009081526065602052604090206001015490565b6102ce6103013660046112f2565b6105da565b6102ce6103143660046112f2565b610604565b6101f2610327366004611284565b6001600160a01b0390811660009081526098602052604090205416151590565b6101f26103553660046112d9565b609c6020526000908152604090205460ff1681565b61037d6103783660046112d9565b610687565b6040805194855260208501939093526001600160a01b03918216928401929092521660608201526080016101fe565b6103bf6103ba36600461131e565b6106cd565b604080516001600160a01b0390931683526020830191909152016101fe565b61022e6103ec3660046112d9565b609d6020526000908152604090205481565b6102ce61040c36600461131e565b61072b565b6102ce61041f366004611348565b610790565b609b5461028e906001600160a01b031681565b61028e610445366004611284565b6001600160a01b039081166000908152609860205260409020541690565b6101f26104713660046112f2565b610864565b6102ce610484366004611384565b61088f565b61022e600081565b61022e61049f366004611348565b610937565b61022e6104b2366004611284565b60996020526000908152604090205481565b6102ce6104d23660046113d9565b610b2b565b6102ce6104e5366004611284565b610b8c565b6102ce6104f83660046114b4565b610bce565b6102ce61050b3660046112f2565b610c2d565b6102ce61051e3660046112f2565b610c52565b6102ce61053136600461154a565b610dc3565b6102ce610544366004611284565b610e6f565b60006001600160e01b03198216637965db0b60e01b148061057a57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061058b81610e9d565b6127108211156105ae57604051632627b42d60e11b815260040160405180910390fd5b506000918252609c60209081526040808420805460ff191695151595909517909455609d905291902055565b6000828152606560205260409020600101546105f581610e9d565b6105ff8383610eaa565b505050565b6001600160a01b03811633146106795760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6106838282610f30565b5050565b609a818154811061069757600080fd5b60009182526020909120600490910201805460018201546002830154600390930154919350916001600160a01b03908116911684565b6000818152609c6020526040812054819060ff16156106fb57506000828152609d6020526040902054610716565b506001600160a01b0383166000908152609960205260409020545b609b546001600160a01b031694909350915050565b600061073681610e9d565b6001600160a01b038316600081815260996020908152604091829020859055815192835282018490527fc1c540da095b5b6d54738e18568e3c832ae9d1a26f1abeb3e69efde2d4fd6ec291015b60405180910390a1505050565b7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee276107ba81610e9d565b6001600160a01b0384811660009081526098602052604090205416156107f35760405163515567cf60e01b815260040160405180910390fd5b6001600160a01b03848116600081815260986020908152604080832080546001600160a01b0319169589169586179055609982529182902086905590519182527fb0c28f4dd5b8aa95e332651d07f6930a2f9d46ae2bc4bfa73e2f33e478a1269b910160405180910390a250505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60008051602061171b8339815191526108a781610e9d565b6001600160a01b03868116600090815260986020526040908190205490516323f4440760e21b81528783166004820152868316602482015260448101869052606481018590529116908190638fd1101c906084015b600060405180830381600087803b15801561091657600080fd5b505af115801561092a573d6000803e3d6000fd5b5050505050505050505050565b600060008051602061171b83398151915261095181610e9d565b610959610f97565b6040805160808101825282815260208082018781526001600160a01b038a81168486018181523360608701818152609a8054600181018255600091909152975160049098027f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be481019890985594517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be588015590517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be6870180549185166001600160a01b031992831617905593517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be790960180549690931695909316949094179055835190815290810191909152919350849184917f5cbfe9cceabf50e9fcfff39e46cd47b1667ad148238648e99aee4fa0e1193d43910160405180910390a36001600160a01b03841615610b23576001600160a01b0385811660009081526098602052604090819020549051633670855b60e11b8152336004820152868316602482015260448101859052911690636ce10ab690606401600060405180830381600087803b158015610b0a57600080fd5b505af1158015610b1e573d6000803e3d6000fd5b505050505b509392505050565b6000610b3681610e9d565b6001600160a01b038216610b5d57604051632627b42d60e11b815260040160405180910390fd5b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee27610bb681610e9d565b61068360008051602061171b83398151915283610eaa565b60008051602061171b833981519152610be681610e9d565b6001600160a01b038087166000908152609860205260409081902054905163d518b7ff60e01b8152911690819063d518b7ff906108fc9089908990899089906004016115a3565b600082815260656020526040902060010154610c4881610e9d565b6105ff8383610f30565b600054610100900460ff1615808015610c725750600054600160ff909116105b80610c8c5750303b158015610c8c575060005460ff166001145b610cef5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610670565b6000805460ff191660011790558015610d12576000805461ff0019166101001790555b610d1a610fb9565b610d25600033611026565b6097839055609b80546001600160a01b0319166001600160a01b03841690811790915560408051918252602082018590527fa4888636278c973bcfd5eca8f86d67bf0c980edbf1740721c6f229b0421ae1e2910160405180910390a180156105ff576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610783565b6000610dce81610e9d565b6001600160a01b038085166000908152609860205260409020541680610e0757604051632627b42d60e11b815260040160405180910390fd5b60405163b08805a560e01b815260048101859052602481018490526001600160a01b0382169063b08805a590604401600060405180830381600087803b158015610e5057600080fd5b505af1158015610e64573d6000803e3d6000fd5b505050505050505050565b6000610e7a81610e9d565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b610ea78133611030565b50565b610eb48282610864565b6106835760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610eec3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610f3a8282610864565b156106835760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b609a54609754600091610fa9916115f7565b610fb49060016115f7565b905090565b600054610100900460ff166110245760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610670565b565b6106838282610eaa565b61103a8282610864565b6106835761104781611089565b61105283602061109b565b60405160200161106392919061162e565b60408051601f198184030181529082905262461bcd60e51b8252610670916004016116a3565b606061057a6001600160a01b03831660145b606060006110aa8360026116d6565b6110b59060026115f7565b67ffffffffffffffff8111156110cd576110cd611403565b6040519080825280601f01601f1916602001820160405280156110f7576020820181803683370190505b509050600360fc1b81600081518110611112576111126116ed565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611141576111416116ed565b60200101906001600160f81b031916908160001a90535060006111658460026116d6565b6111709060016115f7565b90505b60018111156111e8576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106111a4576111a46116ed565b1a60f81b8282815181106111ba576111ba6116ed565b60200101906001600160f81b031916908160001a90535060049490941c936111e181611703565b9050611173565b5083156112375760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610670565b9392505050565b60006020828403121561125057600080fd5b81356001600160e01b03198116811461123757600080fd5b80356001600160a01b038116811461127f57600080fd5b919050565b60006020828403121561129657600080fd5b61123782611268565b6000806000606084860312156112b457600080fd5b833580151581146112c457600080fd5b95602085013595506040909401359392505050565b6000602082840312156112eb57600080fd5b5035919050565b6000806040838503121561130557600080fd5b8235915061131560208401611268565b90509250929050565b6000806040838503121561133157600080fd5b61133a83611268565b946020939093013593505050565b60008060006060848603121561135d57600080fd5b61136684611268565b925061137460208501611268565b9150604084013590509250925092565b600080600080600060a0868803121561139c57600080fd5b6113a586611268565b94506113b360208701611268565b93506113c160408701611268565b94979396509394606081013594506080013592915050565b600080604083850312156113ec57600080fd5b6113f583611268565b915061131560208401611268565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261142a57600080fd5b8135602067ffffffffffffffff8083111561144757611447611403565b8260051b604051601f19603f8301168101818110848211171561146c5761146c611403565b60405293845285810183019383810192508785111561148a57600080fd5b83870191505b848210156114a957813583529183019190830190611490565b979650505050505050565b600080600080600060a086880312156114cc57600080fd5b6114d586611268565b94506114e360208701611268565b93506114f160408701611268565b9250606086013567ffffffffffffffff8082111561150e57600080fd5b61151a89838a01611419565b9350608088013591508082111561153057600080fd5b5061153d88828901611419565b9150509295509295909350565b60008060006060848603121561155f57600080fd5b6112c484611268565b600081518084526020808501945080840160005b838110156115985781518752958201959082019060010161157c565b509495945050505050565b6001600160a01b038581168252841660208201526080604082018190526000906115cf90830185611568565b82810360608401526114a98185611568565b634e487b7160e01b600052601160045260246000fd5b8082018082111561057a5761057a6115e1565b60005b8381101561162557818101518382015260200161160d565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161166681601785016020880161160a565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161169781602884016020880161160a565b01602801949350505050565b60208152600082518060208401526116c281604085016020870161160a565b601f01601f19169190910160400192915050565b808202811582820484141761057a5761057a6115e1565b634e487b7160e01b600052603260045260246000fd5b600081611712576117126115e1565b50600019019056fe40a5c770eee7730548a6335e1f372e76bf4759f6fda1a932bd9cfc33106f0b4ca2646970667358221220ca2dc61d57487a62371bc74dd138bad9447ad75c86bac12783a70400e6327b7b64736f6c63430008130033", + "nonce": "0x32", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xd0661e501dc0fdcbae9a9f9f2d6b2a87894fd8ccaefd4e6175e483d926f9a1f1", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x7d4e9772AbE9EeB80df3d8c8Eec2A701f2CCA815", + "function": null, + "arguments": [ + "0x02e9F15e49B58be57cedEF40F251fe2043f8Ae90", + "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "0xda35a26f0000000000000000000000000000000000000000000000000000000000007530000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xd560f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656400000000000000000000000002e9f15e49b58be57cedef40f251fe2043f8ae900000000000000000000000008cb15fb45a80a7ba5b393a60969e6d79520103c900000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044da35a26f0000000000000000000000000000000000000000000000000000000000007530000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x33", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x28db13f624577b52cd6049a73fee1ee7c050955808c367a512d09240606deb21", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0xAa9E17Fa13c9EA49D2289A18DC6D840F221690Eb", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x1c20a8", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611836806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80636b7e394911610104578063a217fddf116100a2578063d57f966b11610071578063d57f966b146103f3578063d8f4b6fd146103fc578063e442ac1814610411578063fdbda0ec1461042457600080fd5b8063a217fddf146103b0578063bdd2fe78146103b8578063cfc5a0c0146103cb578063d547741f146103e057600080fd5b8063832ca2f5116100de578063832ca2f5146103645780638d058ac81461037757806391d148541461038a5780639f1fb80d1461039d57600080fd5b80636b7e39491461032b5780636cc82b841461033e5780637d2405bb1461035157600080fd5b8063248a9ca3116101715780634128541c1161014b5780634128541c146102df5780634c7dfac3146102f2578063641254bd14610305578063678213491461031857600080fd5b8063248a9ca3146102885780632f2ff15d146102b957806336568abe146102cc57600080fd5b80631c8518c2116101ad5780631c8518c2146102245780631ce6e4441461024f5780631e5b368414610262578063229a8a821461027557600080fd5b806301ffc9a7146101d45780631459457a146101fc57806318c25d8a14610211575b600080fd5b6101e76101e2366004611348565b610457565b60405190151581526020015b60405180910390f35b61020f61020a366004611389565b61048e565b005b61020f61021f3660046113ee565b61060f565b609b54610237906001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b609a54610237906001600160a01b031681565b61020f610270366004611418565b61077f565b610237610283366004611418565b610831565b6102ab610296366004611418565b60009081526065602052604090206001015490565b6040519081526020016101f3565b61020f6102c7366004611431565b61084b565b61020f6102da366004611431565b610870565b609854610237906001600160a01b031681565b6101e761030036600461145d565b6108ee565b61020f61031336600461145d565b610908565b61020f610326366004611478565b610936565b61020f61033936600461145d565b6109d9565b609954610237906001600160a01b031681565b61020f61035f36600461145d565b610a09565b61020f61037236600461145d565b610a37565b610237610385366004611418565b610a65565b6101e7610398366004611431565b610a7f565b61020f6103ab366004611557565b610aaa565b6102ab600081565b609c54610237906001600160a01b031681565b6102ab6000805160206117c183398151915281565b61020f6103ee366004611431565b610bd4565b6102ab609d5481565b6102ab6000805160206117e183398151915281565b61020f61041f3660046115bd565b610bf9565b610437610432366004611418565b610ca5565b604080516001600160a01b039384168152929091166020830152016101f3565b60006001600160e01b03198216637965db0b60e01b148061048857506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156104ae5750600054600160ff909116105b806104c85750303b1580156104c8575060005460ff166001145b6105305760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610553576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d556105b6610cde565b6105c1600033610d4b565b8015610607576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b6000805160206117c183398151915261062781610d55565b61271082111561064a57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661067157604051632627b42d60e11b815260040160405180910390fd5b609c54600090610689906001600160a01b0316610d62565b60985460405163485cc95560e01b81526001600160a01b038781166004830152918216602482015291925082169063485cc95590604401600060405180830381600087803b1580156106da57600080fd5b505af11580156106ee573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b91991506064015b600060405180830381600087803b15801561074957600080fd5b505af115801561075d573d6000803e3d6000fd5b505050506107796000805160206117e18339815191528561084b565b50505050565b6000805160206117e183398151915261079781610d55565b609b546000906107b0906001600160a01b031684610dfc565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561080a57600080fd5b505af115801561081e573d6000803e3d6000fd5b5050505061082c8133610e99565b505050565b609a54600090610488906001600160a01b03168330610ff1565b60008281526065602052604090206001015461086681610d55565b61082c838361104d565b6001600160a01b03811633146108e05760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610527565b6108ea82826110d3565b5050565b60006104886000805160206117e183398151915283610a7f565b600061091381610d55565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b6000805160206117c183398151915261094e81610d55565b61271082111561097157604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03841661099857604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b9199060640161072f565b6000805160206117c18339815191526109f181610d55565b6108ea6000805160206117e183398151915283610bd4565b6000610a1481610d55565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610a4281610d55565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b609b54600090610488906001600160a01b03168330610ff1565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000805160206117c1833981519152610ac281610d55565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610b0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b309190611602565b610b4d57604051634f3bd42760e01b815260040160405180910390fd5b6000610b598684610dfc565b60985460995460405163197a393d60e21b81529293506001600160a01b03808516936365e8e4f493610b98938b93918216929116908a90600401611674565b600060405180830381600087803b158015610bb257600080fd5b505af1158015610bc6573d6000803e3d6000fd5b505050506106078186610e99565b600082815260656020526040902060010154610bef81610d55565b61082c83836110d3565b6000805160206117e1833981519152610c1181610d55565b609a54600090610c2a906001600160a01b031684610dfc565b60985460995460405163197a393d60e21b81529293506001600160a01b03808516936365e8e4f493610c69933393918216929116908a90600401611674565b600060405180830381600087803b158015610c8357600080fd5b505af1158015610c97573d6000803e3d6000fd5b505050506107798133610e99565b60978181548110610cb557600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff16610d495760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610527565b565b6108ea828261104d565b610d5f813361113a565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b038116610df75760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b6044820152606401610527565b919050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b0381166104885760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c65640000000000000000006044820152606401610527565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c90610f6f9085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b158015610f8957600080fd5b505af1158015610f9d573d6000803e3d6000fd5b50505050609d60008154610fb0906116c8565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6110578282610a7f565b6108ea5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561108f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6110dd8282610a7f565b156108ea5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6111448282610a7f565b6108ea5761115181611193565b61115c8360206111a5565b60405160200161116d9291906116e1565b60408051601f198184030181529082905262461bcd60e51b825261052791600401611756565b60606104886001600160a01b03831660145b606060006111b4836002611769565b6111bf906002611780565b67ffffffffffffffff8111156111d7576111d76114b4565b6040519080825280601f01601f191660200182016040528015611201576020820181803683370190505b509050600360fc1b8160008151811061121c5761121c611793565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061124b5761124b611793565b60200101906001600160f81b031916908160001a905350600061126f846002611769565b61127a906001611780565b90505b60018111156112f2576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106112ae576112ae611793565b1a60f81b8282815181106112c4576112c4611793565b60200101906001600160f81b031916908160001a90535060049490941c936112eb816117a9565b905061127d565b5083156113415760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610527565b9392505050565b60006020828403121561135a57600080fd5b81356001600160e01b03198116811461134157600080fd5b80356001600160a01b0381168114610df757600080fd5b600080600080600060a086880312156113a157600080fd5b6113aa86611372565b94506113b860208701611372565b93506113c660408701611372565b92506113d460608701611372565b91506113e260808701611372565b90509295509295909350565b6000806040838503121561140157600080fd5b61140a83611372565b946020939093013593505050565b60006020828403121561142a57600080fd5b5035919050565b6000806040838503121561144457600080fd5b8235915061145460208401611372565b90509250929050565b60006020828403121561146f57600080fd5b61134182611372565b60008060006060848603121561148d57600080fd5b61149684611372565b92506114a460208501611372565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126114db57600080fd5b813567ffffffffffffffff808211156114f6576114f66114b4565b604051601f8301601f19908116603f0116810190828211818310171561151e5761151e6114b4565b8160405283815286602085880101111561153757600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561156d57600080fd5b61157685611372565b935061158460208601611372565b9250604085013567ffffffffffffffff8111156115a057600080fd5b6115ac878288016114ca565b949793965093946060013593505050565b600080604083850312156115d057600080fd5b823567ffffffffffffffff8111156115e757600080fd5b6115f3858286016114ca565b95602094909401359450505050565b60006020828403121561161457600080fd5b8151801515811461134157600080fd5b60005b8381101561163f578181015183820152602001611627565b50506000910152565b60008151808452611660816020860160208601611624565b601f01601f19169290920160200192915050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190526000906116a890830184611648565b9695505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016116da576116da6116b2565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611719816017850160208801611624565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161174a816028840160208801611624565b01602801949350505050565b6020815260006113416020830184611648565b8082028115828204841417610488576104886116b2565b80820180821115610488576104886116b2565b634e487b7160e01b600052603260045260246000fd5b6000816117b8576117b86116b2565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220e8261c01885e610fa152a11d1ee93f6170146b932119b0773109f6e03291865064736f6c63430008130033", + "nonce": "0x34", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xc2e0e10570635c5cd0f57f148cfb64dc3ff963c828ee84d2b9387131c9e9f142", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xc8C36aea082ABaEC51029fe16Fc3e1641Ac213FD", + "function": null, + "arguments": [ + "0xAa9E17Fa13c9EA49D2289A18DC6D840F221690Eb", + "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "0x1459457a0000000000000000000000007d4e9772abe9eeb80df3d8c8eec2a701f2cca8150000000000000000000000004a33991281e9e093d313855f7fcb54010415a895000000000000000000000000eb7c4b1c64222a05958da577f1ffecde445eb2040000000000000000000000001e7b76cb83e6638c504e03a36bb69500457e86110000000000000000000000003d0894b2aafdd3a03092351f19d6f5c3eaa01475" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xeb66f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000aa9e17fa13c9ea49d2289a18dc6d840f221690eb0000000000000000000000008cb15fb45a80a7ba5b393a60969e6d79520103c9000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a41459457a0000000000000000000000007d4e9772abe9eeb80df3d8c8eec2a701f2cca8150000000000000000000000004a33991281e9e093d313855f7fcb54010415a895000000000000000000000000eb7c4b1c64222a05958da577f1ffecde445eb2040000000000000000000000001e7b76cb83e6638c504e03a36bb69500457e86110000000000000000000000003d0894b2aafdd3a03092351f19d6f5c3eaa0147500000000000000000000000000000000000000000000000000000000", + "nonce": "0x35", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xeaa22f6aa882f7c817abd8b4ba8de64d117777583c7ddbac075877e78a279df0", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x7d4e9772AbE9EeB80df3d8c8Eec2A701f2CCA815", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x7d4e9772abe9eeb80df3d8c8eec2a701f2cca815", + "gas": "0x14fbd", + "value": "0x0", + "data": "0x2f2ff15ddfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee27000000000000000000000000c8c36aea082abaec51029fe16fc3e1641ac213fd", + "nonce": "0x36", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x8a8b83817ffc875822092ffb23c66fb626b7e26e2acc7da4474a80e6aae6b73b", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xc8C36aea082ABaEC51029fe16Fc3e1641Ac213FD", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0xc8c36aea082abaec51029fe16fc3e1641ac213fd", + "gas": "0x14fcb", + "value": "0x0", + "data": "0x2f2ff15d2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "nonce": "0x37", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x9b116ab3cfc6755834eab7e7ea398ff41627ff596c26069caeb83a1988e80357", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x4A33991281e9E093D313855F7fcb54010415A895", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x4a33991281e9e093d313855f7fcb54010415a895", + "gas": "0x1213a", + "value": "0x0", + "data": "0x7adaeebe000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "nonce": "0x38", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0x9b116ab3cfc6755834eab7e7ea398ff41627ff596c26069caeb83a1988e80357", + "transactionIndex": "0x0", + "blockHash": "0xfbca9dc9797ad1ce4e7ca1c61e0e71dd03a29b25f394100bf61caafde50fa300", + "blockNumber": "0x4bdbc1", + "from": "0xD22a47CFE06d69f678Ae08ff7B47C0b29c31c978", + "to": "0x876F05312fC98b89e0152155e8eFdC1ee7C4830e", + "cumulativeGasUsed": "0x5208", + "gasUsed": "0x5208", + "contractAddress": null, + "logs": [], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x0", + "effectiveGasPrice": "0x16bcc41e9000" + }, + { + "transactionHash": "0x4b490b6e1c0322cb15f1b35ca622e6b5740414e350846483ce215bf9741be21c", + "transactionIndex": "0x3", + "blockHash": "0xa7fdd08a107cceb7a14126c404052e5c520ea6af3bc61b9338c6118faffa2c4c", + "blockNumber": "0x97695c", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x63c0ac", + "gasUsed": "0x1f4585", + "contractAddress": "0x1E7B76cB83E6638c504E03a36bB69500457E8611", + "logs": [ + { + "address": "0x1E7B76cB83E6638c504E03a36bB69500457E8611", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xa7fdd08a107cceb7a14126c404052e5c520ea6af3bc61b9338c6118faffa2c4c", + "blockNumber": "0x97695c", + "transactionHash": "0x4b490b6e1c0322cb15f1b35ca622e6b5740414e350846483ce215bf9741be21c", + "transactionIndex": "0x3", + "logIndex": "0x4", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000040000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f17" + }, + { + "transactionHash": "0xbcee3fd358fb73da57f394fb8cb7f044347edcc55642f05d75c2b2cd3afe63d8", + "transactionIndex": "0x4", + "blockHash": "0xa7fdd08a107cceb7a14126c404052e5c520ea6af3bc61b9338c6118faffa2c4c", + "blockNumber": "0x97695c", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x8a787e", + "gasUsed": "0x26b7d2", + "contractAddress": "0x3d0894B2aAfDD3A03092351F19d6F5c3EaA01475", + "logs": [ + { + "address": "0x3d0894B2aAfDD3A03092351F19d6F5c3EaA01475", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xa7fdd08a107cceb7a14126c404052e5c520ea6af3bc61b9338c6118faffa2c4c", + "blockNumber": "0x97695c", + "transactionHash": "0xbcee3fd358fb73da57f394fb8cb7f044347edcc55642f05d75c2b2cd3afe63d8", + "transactionIndex": "0x4", + "logIndex": "0x5", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f17" + }, + { + "transactionHash": "0x63ba3813fb764a76a6fffcee8d1189d2e6e5d7917ce225ea92a11642d7955857", + "transactionIndex": "0x1", + "blockHash": "0xd61ef7ef7cd18a756bc37b0999541a7a79b8eb95bd9d9185d1ebea69ce7c76cd", + "blockNumber": "0x97695d", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x16ac37", + "gasUsed": "0x14fe96", + "contractAddress": "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "logs": [ + { + "address": "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd61ef7ef7cd18a756bc37b0999541a7a79b8eb95bd9d9185d1ebea69ce7c76cd", + "blockNumber": "0x97695d", + "transactionHash": "0x63ba3813fb764a76a6fffcee8d1189d2e6e5d7917ce225ea92a11642d7955857", + "transactionIndex": "0x1", + "logIndex": "0x1", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000001000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f1e" + }, + { + "transactionHash": "0x2920bf71b82f7656a597c4cce623764267b3e10b4657bc03342543677df6c1e7", + "transactionIndex": "0x2", + "blockHash": "0xd61ef7ef7cd18a756bc37b0999541a7a79b8eb95bd9d9185d1ebea69ce7c76cd", + "blockNumber": "0x97695d", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x2841b3", + "gasUsed": "0x11957c", + "contractAddress": "0x6b5a2c172FDdcc15f0404c83E70F2f8ee54B2b23", + "logs": [ + { + "address": "0x6b5a2c172FDdcc15f0404c83E70F2f8ee54B2b23", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd61ef7ef7cd18a756bc37b0999541a7a79b8eb95bd9d9185d1ebea69ce7c76cd", + "blockNumber": "0x97695d", + "transactionHash": "0x2920bf71b82f7656a597c4cce623764267b3e10b4657bc03342543677df6c1e7", + "transactionIndex": "0x2", + "logIndex": "0x2", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000080000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f1e" + }, + { + "transactionHash": "0x666955695220123c2228f59ccebac46b0078c08d2c0b822aeacf4594afdcc442", + "transactionIndex": "0x8", + "blockHash": "0x29c59fe31e11762d01fbb1b8afe5fe31509662da3d21b14e86057129ab289067", + "blockNumber": "0x97695e", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x10de41b", + "gasUsed": "0x311af5", + "contractAddress": "0xAa9E17Fa13c9EA49D2289A18DC6D840F221690Eb", + "logs": [ + { + "address": "0xAa9E17Fa13c9EA49D2289A18DC6D840F221690Eb", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x29c59fe31e11762d01fbb1b8afe5fe31509662da3d21b14e86057129ab289067", + "blockNumber": "0x97695e", + "transactionHash": "0x666955695220123c2228f59ccebac46b0078c08d2c0b822aeacf4594afdcc442", + "transactionIndex": "0x8", + "logIndex": "0xc", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000800000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f34" + }, + { + "transactionHash": "0x619548bf2c4339c93f27bb592784cd39578ee81898f3e85ddc69ec08386730a7", + "transactionIndex": "0x2", + "blockHash": "0x28785be88e07fb14ea34ff028fcf39e800b67b93b64cbf07584924c02e321868", + "blockNumber": "0x97695f", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x39db65", + "gasUsed": "0x6bda5", + "contractAddress": "0xc8C36aea082ABaEC51029fe16Fc3e1641Ac213FD", + "logs": [ + { + "address": "0xc8C36aea082ABaEC51029fe16Fc3e1641Ac213FD", + "topics": [ + "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000ed1a447270a92d23b716a1cf52b1f9c358f447ee" + ], + "data": "0x", + "blockHash": "0x28785be88e07fb14ea34ff028fcf39e800b67b93b64cbf07584924c02e321868", + "blockNumber": "0x97695f", + "transactionHash": "0x619548bf2c4339c93f27bb592784cd39578ee81898f3e85ddc69ec08386730a7", + "transactionIndex": "0x2", + "logIndex": "0x3", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000002000000000000000001000000000000000000000000000000000000020000000000000000000800000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000040000000000000000000000000000000000000000000000008000000000000000000020000000000000000000000000000000000000000000000000000000000000000400", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f5a" + }, + { + "transactionHash": "0x28db13f624577b52cd6049a73fee1ee7c050955808c367a512d09240606deb21", + "transactionIndex": "0x4", + "blockHash": "0x28785be88e07fb14ea34ff028fcf39e800b67b93b64cbf07584924c02e321868", + "blockNumber": "0x97695f", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x51c5f2", + "gasUsed": "0x15a48c", + "contractAddress": "0x34a72e152F3EbC30316D6C1e4fc11f645008c200", + "logs": [ + { + "address": "0x34a72e152F3EbC30316D6C1e4fc11f645008c200", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x28785be88e07fb14ea34ff028fcf39e800b67b93b64cbf07584924c02e321868", + "blockNumber": "0x97695f", + "transactionHash": "0x28db13f624577b52cd6049a73fee1ee7c050955808c367a512d09240606deb21", + "transactionIndex": "0x4", + "logIndex": "0x8", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000200000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f5a" + }, + { + "transactionHash": "0xeaa22f6aa882f7c817abd8b4ba8de64d117777583c7ddbac075877e78a279df0", + "transactionIndex": "0x5", + "blockHash": "0xcb8d084c995ee4ef0709bb8de9e2f4bd8891b6a853c2222ab5b89f8cb2f83c73", + "blockNumber": "0x976960", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": "0x7d4e9772AbE9EeB80df3d8c8Eec2A701f2CCA815", + "cumulativeGasUsed": "0xc421a", + "gasUsed": "0x55b8", + "contractAddress": null, + "logs": [], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f74" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1698150989, + "chain": 5, + "multi": false, + "commit": "9a7b2c3" +} \ No newline at end of file diff --git a/broadcast/deploy-platform.s.sol/5/run-latest.json b/broadcast/deploy-platform.s.sol/5/run-latest.json new file mode 100644 index 0000000..bf3671b --- /dev/null +++ b/broadcast/deploy-platform.s.sol/5/run-latest.json @@ -0,0 +1,519 @@ +{ + "transactions": [ + { + "hash": "0xbcee3fd358fb73da57f394fb8cb7f044347edcc55642f05d75c2b2cd3afe63d8", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0xEb7C4B1c64222a05958da577f1FFeCDe445EB204", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x3251ab", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612c7380620000f46000396000f3fe60806040526004361061020f5760003560e01c806370a0823111610118578063a1db9782116100a0578063d5abeb011161006f578063d5abeb0114610622578063de7ecf8714610638578063e985e9c51461064e578063f2fde38b1461066e578063fe325e961461068e57600080fd5b8063a1db9782146105af578063a22cb465146105cf578063b88d4fde146105ef578063c87b56dd1461060257600080fd5b806384a0c766116100e757806384a0c7661461051c5780638c72c54e1461053c5780638da5cb5b1461055c5780639182ba971461057a57806395d89b411461059a57600080fd5b806370a08231146104ad578063715018a6146104cd578063731133e9146104e2578063754b377c146104f557600080fd5b806342842e0e1161019b57806365e8e4f41161016a57806365e8e4f4146103f557806366748e98146104155780636cc82b841461044d5780636dbdaae61461046d5780636f8b44b01461048d57600080fd5b806342842e0e1461036e5780634b1022621461038157806355f804b3146103b55780636352211e146103d557600080fd5b806318160ddd116101e257806318160ddd146102b857806323b872dd146102db5780632a778c9b146102ee5780632e37eef6146103045780634128541c1461034e57600080fd5b806301ffc9a71461021457806306fdde0314610249578063081812fc1461026b578063095ea7b3146102a3575b600080fd5b34801561022057600080fd5b5061023461022f3660046121e8565b6106a3565b60405190151581526020015b60405180910390f35b34801561025557600080fd5b5061025e6106b4565b6040516102409190612255565b34801561027757600080fd5b5061028b610286366004612268565b61074f565b6040516001600160a01b039091168152602001610240565b6102b66102b1366004612296565b61079c565b005b3480156102c457600080fd5b506102cd6107ac565b604051908152602001610240565b6102b66102e93660046122c2565b6107cc565b3480156102fa57600080fd5b506102cd60685481565b34801561031057600080fd5b5061032461031f366004612268565b6109d0565b6040805195865260208601949094529284019190915260608301521515608082015260a001610240565b34801561035a57600080fd5b5060655461028b906001600160a01b031681565b6102b661037c3660046122c2565b610a14565b34801561038d57600080fd5b506102cd7f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156103c157600080fd5b506102b66103d036600461234b565b610a34565b3480156103e157600080fd5b5061028b6103f0366004612268565b610a49565b34801561040157600080fd5b506102b6610410366004612417565b610a54565b34801561042157600080fd5b506102cd610430366004612296565b606c60209081526000928352604080842090915290825290205481565b34801561045957600080fd5b5060665461028b906001600160a01b031681565b34801561047957600080fd5b506102b6610488366004612268565b610cd9565b34801561049957600080fd5b506102b66104a8366004612268565b610ce6565b3480156104b957600080fd5b506102cd6104c836600461249f565b610d1b565b3480156104d957600080fd5b506102b6610d83565b6102b66104f03660046124bc565b610d97565b34801561050157600080fd5b5061050a600181565b60405160ff9091168152602001610240565b34801561052857600080fd5b506102b6610537366004612525565b610fbe565b34801561054857600080fd5b5060675461028b906001600160a01b031681565b34801561056857600080fd5b506033546001600160a01b031661028b565b34801561058657600080fd5b506102b66105953660046125aa565b611003565b3480156105a657600080fd5b5061025e6111ca565b3480156105bb57600080fd5b506102b66105ca366004612296565b611206565b3480156105db57600080fd5b506102b66105ea36600461262c565b61127f565b6102b66105fd366004612665565b6112fc565b34801561060e57600080fd5b5061025e61061d366004612268565b611346565b34801561062e57600080fd5b506102cd606d5481565b34801561064457600080fd5b506102cd60695481565b34801561065a57600080fd5b506102346106693660046126b8565b6114a1565b34801561067a57600080fd5b506102b661068936600461249f565b6114de565b34801561069a57600080fd5b506102b6611557565b60006106ae82611729565b92915050565b60606106be611777565b60020180546106cc906126e6565b80601f01602080910402602001604051908101604052809291908181526020018280546106f8906126e6565b80156107455780601f1061071a57610100808354040283529160200191610745565b820191906000526020600020905b81548152906001019060200180831161072857829003601f168201915b5050505050905090565b600061075a8261179b565b610777576040516333d1c03960e21b815260040160405180910390fd5b61077f611777565b60009283526006016020525060409020546001600160a01b031690565b6107a8828260016117e4565b5050565b600060016107b8611777565b600101546107c4611777565b540303919050565b60006107d782611899565b9050836001600160a01b0316816001600160a01b03161461080a5760405162a1148160e81b815260040160405180910390fd5b60008061081684611946565b9150915061083b81876108263390565b6001600160a01b039081169116811491141790565b6108665761084986336114a1565b61086657604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b03851661088d57604051633a954ecd60e21b815260040160405180910390fd5b61089a868686600161196e565b80156108a557600082555b6108ad611777565b6001600160a01b03871660009081526005919091016020526040902080546000190190556108d9611777565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610910611777565b60008681526004919091016020526040812091909155600160e11b84169003610986576001840161093f611777565b60008281526004919091016020526040812054900361098457610960611777565b5481146109845783610970611777565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45b505050505050565b606b81815481106109e057600080fd5b6000918252602090912060059091020180546001820154600283015460038401546004909401549294509092909160ff1685565b610a2f838383604051806020016040528060008152506112fc565b505050565b610a3c6119ff565b606a610a2f828483612760565b60006106ae82611899565b600080516020612c1e83398151915254610100900460ff16610a8957600080516020612c1e8339815191525460ff1615610a8d565b303b155b610b045760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b600080516020612c1e83398151915254610100900460ff16158015610b4057600080516020612c1e833981519152805461ffff19166101011790555b600054610100900460ff1615808015610b605750600054600160ff909116105b80610b7a5750303b158015610b7a575060005460ff166001145b610bdd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610afb565b6000805460ff191660011790558015610c00576000805461ff0019166101001790555b610c198360405180602001604052806000815250611a59565b610c21611a97565b610c2a86611ac6565b6000606855606580546001600160a01b038088166001600160a01b0319928316179092556066805487841690831617905560678054928916929091169190911790558015610cb2576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610cd257600080516020612c1e833981519152805461ff00191690555b5050505050565b610ce16119ff565b606955565b610cee6119ff565b610cf6611b18565b811015610d1657604051632627b42d60e11b815260040160405180910390fd5b606d55565b60006001600160a01b038216610d44576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03610d54611777565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b610d8b6119ff565b610d956000611ac6565b565b610da084611b2b565b610dbd576040516332f7a9d760e21b815260040160405180910390fd5b6000606b8581548110610dd257610dd261281f565b60009182526020918290206040805160a0810182526005909302909101805483526001810154938301939093526002830154908201526003820154606082015260049091015460ff1615156080820152606d5490915084610e31611b18565b610e3b919061284b565b1115610e5a576040516322eb5e9560e21b815260040160405180910390fd5b8060800151610ef9576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490610e9b90899030908a908990899060040161285e565b602060405180830381865afa158015610eb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edc91906128b2565b610ef9576040516352c973a760e01b815260040160405180910390fd5b60608101516001600160a01b0387166000908152606c60209081526040808320898452909152902054610f2d90869061284b565b1115610f4c57604051631d66b65960e11b815260040160405180910390fd5b838160400151610f5c91906128cf565b3414610f7b576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0386166000908152606c6020908152604080832088845290915281208054869290610fae90849061284b565b909155506109c890508685611bd2565b610fc66119ff565b606d87905586851115610fec57604051632627b42d60e11b815260040160405180910390fd5b610ffa868686868686611d1a565b50505050505050565b61100b6119ff565b606b541561101f5761101f606b600061217d565b600081815b818110156111905760008585838181106110405761104061281f565b905060a0020180360381019061105691906128e6565b9050838160000151108061106e575060208101518151115b1561108c57604051632627b42d60e11b815260040160405180910390fd5b606b805460018101825560009190915281517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b4600590920291820181905560208301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b583015560408301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b683015560608301517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b78301556080909201517fbd43cb8ece8cd1863bcd6082d65c5b0d25665b1ce17980f0da43c0ed545f98b8909101805460ff191691151591909117905592506111898161295b565b9050611024565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6060606854600014611203576111e1606854611e32565b6040516020016111f19190612974565b60405160208183030381529060405290505b90565b61120e6119ff565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af115801561125b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a2f91906128b2565b80611288611777565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113078484846107cc565b6001600160a01b0383163b156113405761132384848484611ec4565b611340576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b60606113518261179b565b61136e57604051632627b42d60e11b815260040160405180910390fd5b6000611378611faf565b9050805160000361139a5760405180602001604052806000815250915061149b565b60408051600180825281830190925260009160208201818036833701905050905081600183516113ca919061299e565b815181106113da576113da61281f565b602001015160f81c60f81b816000815181106113f8576113f861281f565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161144891906129b1565b6040516020818303038152906040528051906020012003611494578261146d86611fbe565b60405160200161147e9291906129cd565b6040516020818303038152906040529350611498565b8293505b50505b50919050565b60006114ab611777565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6114e66119ff565b6001600160a01b03811661154b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610afb565b61155481611ac6565b50565b61155f6119ff565b60655460675460685460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156115b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115dd91906129fc565b90925090506001600160a01b03821661160957604051632627b42d60e11b815260040160405180910390fd5b47600061271061161984846128cf565b6116239190612a2a565b90506000611631828461299e565b905080156116af576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611686576040519150601f19603f3d011682016040523d82523d6000602084013e61168b565b606091505b50509050806116ad57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610cd2576067546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611702576040519150601f19603f3d011682016040523d82523d6000602084013e611707565b606091505b50509050806109c857604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b03198316148061175a57506380ac58cd60e01b6001600160e01b03198316145b806106ae5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b6000816001111580156117b557506117b1611777565b5482105b80156106ae5750600160e01b6117c9611777565b60008481526004919091016020526040902054161592915050565b60006117ef83610a49565b9050811561182e57336001600160a01b0382161461182e5761181181336114a1565b61182e576040516367d9dca160e11b815260040160405180910390fd5b83611837611777565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b60008160011161192d576118ab611777565b600083815260049190910160205260408120549150600160e01b8216900361192d5780600003611928576118dd611777565b5482106118fd57604051636f96cda160e11b815260040160405180910390fd5b611905611777565b6000199092016000818152600493909301602052604090922054905080156118fd575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611953611777565b60009485526006016020525050604090912080549092909150565b6069541561134057606554606754606854604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156119e157600080fd5b505af11580156119f5573d6000803e3d6000fd5b5050505050505050565b6033546001600160a01b03163314610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610afb565b600080516020612c1e83398151915254610100900460ff16611a8d5760405162461bcd60e51b8152600401610afb90612a4c565b6107a88282612002565b600054610100900460ff16611abe5760405162461bcd60e51b8152600401610afb90612aa0565b610d95612075565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006001611b24611777565b5403919050565b606b546000908210611b5057604051632627b42d60e11b815260040160405180910390fd5b6000606b8381548110611b6557611b6561281f565b60009182526020918290206040805160a08101825260059093029091018054808452600182015494840194909452600281015491830191909152600381015460608301526004015460ff161515608082015291504210801590611bcb5750428160200151115b9392505050565b6000611bdc611777565b5490506000829003611c015760405163b562e8dd60e01b815260040160405180910390fd5b611c0e600084838561196e565b680100000000000000018202611c22611777565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717611c5d611777565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b818114611ce757808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101611caf565b5081600003611d0857604051622e076360e81b815260040160405180910390fd5b80611d11611777565b5550610a2f9050565b60685415611d3b576040516302d1671b60e41b815260040160405180910390fd5b85158015611d5157506001600160a01b03831615155b80611d6d57506001600160a01b038316158015611d6d57508515155b15611d8b57604051632627b42d60e11b815260040160405180910390fd5b60655460675460405163ae98d85760e01b81526001600160a01b03918216600482015285821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015611de8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0c9190612aeb565b6068556069869055606a611e21828483612760565b5084156109c8576109c88486611bd2565b60606000611e3f836120a5565b60010190506000816001600160401b03811115611e5e57611e5e61238c565b6040519080825280601f01601f191660200182016040528015611e88576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611e9257509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290611ef9903390899088908890600401612b04565b6020604051808303816000875af1925050508015611f34575060408051601f3d908101601f19168201909252611f3191810190612b41565b60015b611f92573d808015611f62576040519150601f19603f3d011682016040523d82523d6000602084013e611f67565b606091505b508051600003611f8a576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606a80546106cc906126e6565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a900480611fd85750819003601f19909101908152919050565b600080516020612c1e83398151915254610100900460ff166120365760405162461bcd60e51b8152600401610afb90612a4c565b8161203f611777565b6002019061204d9082612b5e565b5080612057611777565b600301906120659082612b5e565b506001612070611777565b555050565b600054610100900460ff1661209c5760405162461bcd60e51b8152600401610afb90612aa0565b610d9533611ac6565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106120e45772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612110576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061212e57662386f26fc10000830492506010015b6305f5e1008310612146576305f5e100830492506008015b612710831061215a57612710830492506004015b6064831061216c576064830492506002015b600a83106106ae5760010192915050565b508054600082556005029060005260206000209081019061155491905b808211156121ce5760008082556001820181905560028201819055600382015560048101805460ff1916905560050161219a565b5090565b6001600160e01b03198116811461155457600080fd5b6000602082840312156121fa57600080fd5b8135611bcb816121d2565b60005b83811015612220578181015183820152602001612208565b50506000910152565b60008151808452612241816020860160208601612205565b601f01601f19169290920160200192915050565b602081526000611bcb6020830184612229565b60006020828403121561227a57600080fd5b5035919050565b6001600160a01b038116811461155457600080fd5b600080604083850312156122a957600080fd5b82356122b481612281565b946020939093013593505050565b6000806000606084860312156122d757600080fd5b83356122e281612281565b925060208401356122f281612281565b929592945050506040919091013590565b60008083601f84011261231557600080fd5b5081356001600160401b0381111561232c57600080fd5b60208301915083602082850101111561234457600080fd5b9250929050565b6000806020838503121561235e57600080fd5b82356001600160401b0381111561237457600080fd5b61238085828601612303565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b03808411156123bc576123bc61238c565b604051601f8501601f19908116603f011681019082821181831017156123e4576123e461238c565b816040528093508581528686860111156123fd57600080fd5b858560208301376000602087830101525050509392505050565b6000806000806080858703121561242d57600080fd5b843561243881612281565b9350602085013561244881612281565b9250604085013561245881612281565b915060608501356001600160401b0381111561247357600080fd5b8501601f8101871361248457600080fd5b612493878235602084016123a2565b91505092959194509250565b6000602082840312156124b157600080fd5b8135611bcb81612281565b6000806000806000608086880312156124d457600080fd5b85356124df81612281565b9450602086013593506040860135925060608601356001600160401b0381111561250857600080fd5b61251488828901612303565b969995985093965092949392505050565b600080600080600080600060c0888a03121561254057600080fd5b873596506020880135955060408801359450606088013561256081612281565b9350608088013561257081612281565b925060a08801356001600160401b0381111561258b57600080fd5b6125978a828b01612303565b989b979a50959850939692959293505050565b600080602083850312156125bd57600080fd5b82356001600160401b03808211156125d457600080fd5b818501915085601f8301126125e857600080fd5b8135818111156125f757600080fd5b86602060a08302850101111561260c57600080fd5b60209290920196919550909350505050565b801515811461155457600080fd5b6000806040838503121561263f57600080fd5b823561264a81612281565b9150602083013561265a8161261e565b809150509250929050565b6000806000806080858703121561267b57600080fd5b843561268681612281565b9350602085013561269681612281565b92506040850135915060608501356001600160401b0381111561247357600080fd5b600080604083850312156126cb57600080fd5b82356126d681612281565b9150602083013561265a81612281565b600181811c908216806126fa57607f821691505b60208210810361149b57634e487b7160e01b600052602260045260246000fd5b601f821115610a2f57600081815260208120601f850160051c810160208610156127415750805b601f850160051c820191505b818110156109c85782815560010161274d565b6001600160401b038311156127775761277761238c565b61278b8361278583546126e6565b8361271a565b6000601f8411600181146127bf57600085156127a75750838201355b600019600387901b1c1916600186901b178355610cd2565b600083815260209020601f19861690835b828110156127f057868501358255602094850194600190920191016127d0565b508682101561280d5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156106ae576106ae612835565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b6000602082840312156128c457600080fd5b8151611bcb8161261e565b80820281158282048414176106ae576106ae612835565b600060a082840312156128f857600080fd5b60405160a081018181106001600160401b038211171561291a5761291a61238c565b806040525082358152602083013560208201526040830135604082015260608301356060820152608083013561294f8161261e565b60808201529392505050565b60006001820161296d5761296d612835565b5060010190565b6120a160f11b815260008251612991816002850160208701612205565b9190910160020192915050565b818103818111156106ae576106ae612835565b600082516129c3818460208701612205565b9190910192915050565b600083516129df818460208801612205565b8351908301906129f3818360208801612205565b01949350505050565b60008060408385031215612a0f57600080fd5b8251612a1a81612281565b6020939093015192949293505050565b600082612a4757634e487b7160e01b600052601260045260246000fd5b500490565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600060208284031215612afd57600080fd5b5051919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612b3790830184612229565b9695505050505050565b600060208284031215612b5357600080fd5b8151611bcb816121d2565b81516001600160401b03811115612b7757612b7761238c565b612b8b81612b8584546126e6565b8461271a565b602080601f831160018114612bc05760008415612ba85750858301515b600019600386901b1c1916600185901b1785556109c8565b600085815260208120601f198616915b82811015612bef57888601518255948401946001909101908401612bd0565b5085821015612c0d5787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220210ddb125bf4095c0abcbd659a3c60649af2f481592701c6da57632ae48d0ba164736f6c63430008130033", + "nonce": "0x2c", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x666955695220123c2228f59ccebac46b0078c08d2c0b822aeacf4594afdcc442", + "transactionType": "CREATE", + "contractName": null, + "contractAddress": "0x1E7B76cB83E6638c504E03a36bB69500457E8611", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x3fd18d", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6138c080620000f46000396000f3fe6080604052600436106101c15760003560e01c806375794a3c116100f7578063c0c53b8b11610095578063f0c62a2f11610064578063f0c62a2f146105bd578063f242432a146105d0578063f2fde38b146105f0578063fe325e961461061057600080fd5b8063c0c53b8b14610521578063ca41ca6414610541578063e985e9c514610554578063ed01bda71461059d57600080fd5b80638da5cb5b116100d15780638da5cb5b146104a3578063a1db9782146104c1578063a22cb465146104e1578063ba0802ae1461050157600080fd5b806375794a3c1461040957806376744f501461041f5780638c72c54e1461048357600080fd5b80633b9ed29e116101645780634e1273f41161013e5780634e1273f4146103805780636cc82b84146103ad578063715018a6146103cd578063754b377c146103e257600080fd5b80633b9ed29e146102d85780633bd651a0146103165780634128541c1461034857600080fd5b80630f0e59ac116101a05780630f0e59ac14610256578063162094c4146102785780632eb2c2d61461029857806337da577c146102b857600080fd5b8062fdd58e146101c657806301ffc9a7146101f95780630e89341c14610229575b600080fd5b3480156101d257600080fd5b506101e66101e1366004612873565b610625565b6040519081526020015b60405180910390f35b34801561020557600080fd5b506102196102143660046128b5565b6106c0565b60405190151581526020016101f0565b34801561023557600080fd5b506102496102443660046128d9565b6106cb565b6040516101f09190612938565b34801561026257600080fd5b50610276610271366004612996565b610770565b005b34801561028457600080fd5b50610276610293366004612a76565b6107c6565b3480156102a457600080fd5b506102766102b3366004612b84565b6107ee565b3480156102c457600080fd5b506102766102d3366004612c31565b61083a565b3480156102e457600080fd5b506101e66102f3366004612c53565b60ce60209081526000938452604080852082529284528284209052825290205481565b34801561032257600080fd5b506103366103313660046128d9565b610889565b6040516101f096959493929190612c88565b34801561035457600080fd5b5060c954610368906001600160a01b031681565b6040516001600160a01b0390911681526020016101f0565b34801561038c57600080fd5b506103a061039b366004612cc5565b61094d565b6040516101f09190612dc2565b3480156103b957600080fd5b5060ca54610368906001600160a01b031681565b3480156103d957600080fd5b50610276610a76565b3480156103ee57600080fd5b506103f7600181565b60405160ff90911681526020016101f0565b34801561041557600080fd5b506101e660cc5481565b34801561042b57600080fd5b5061043f61043a366004612c31565b610a8a565b6040516101f09190600060a0820190508251825260208301516020830152604083015160408301526060830151606083015260808301511515608083015292915050565b34801561048f57600080fd5b5060cb54610368906001600160a01b031681565b3480156104af57600080fd5b506097546001600160a01b0316610368565b3480156104cd57600080fd5b506102766104dc366004612873565b610b1d565b3480156104ed57600080fd5b506102766104fc366004612de3565b610b96565b34801561050d57600080fd5b5061027661051c366004612e1c565b610ba5565b34801561052d57600080fd5b5061027661053c366004612e56565b610bb9565b61027661054f366004612ea1565b610d2f565b34801561056057600080fd5b5061021961056f366004612eec565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205460ff1690565b3480156105a957600080fd5b506102766105b8366004612f1a565b610fe2565b6102766105cb366004612f98565b611108565b3480156105dc57600080fd5b506102766105eb366004612fec565b611729565b3480156105fc57600080fd5b5061027661060b366004613054565b61176e565b34801561061c57600080fd5b506102766117e4565b60006001600160a01b0383166106955760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b60006106ba826119ba565b600081815260cd602052604090206006018054606091906106eb90613071565b80601f016020809104026020016040519081016040528092919081815260200182805461071790613071565b80156107645780601f1061073957610100808354040283529160200191610764565b820191906000526020600020905b81548152906001019060200180831161074757829003601f168201915b50505050509050919050565b610778611a0a565b8060005b818110156107c0576107b0848483818110610799576107996130ab565b90506020028101906107ab91906130c1565b611a64565b6107b9816130f7565b905061077c565b50505050565b6107ce611a0a565b600082815260cd602052604090206006016107e98282613156565b505050565b6001600160a01b03851633148061080a575061080a853361056f565b6108265760405162461bcd60e51b815260040161068c90613215565b6108338585858585611c4e565b5050505050565b610842611a0a565b600082815260cd602052604090206001015481101561087457604051632627b42d60e11b815260040160405180910390fd5b600091825260cd602052604090912060020155565b60cd6020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060060180546108ca90613071565b80601f01602080910402602001604051908101604052809291908181526020018280546108f690613071565b80156109435780601f1061091857610100808354040283529160200191610943565b820191906000526020600020905b81548152906001019060200180831161092657829003601f168201915b5050505050905086565b606081518351146109b25760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b606482015260840161068c565b600083516001600160401b038111156109cd576109cd6129d7565b6040519080825280602002602001820160405280156109f6578160200160208202803683370190505b50905060005b8451811015610a6e57610a41858281518110610a1a57610a1a6130ab565b6020026020010151858381518110610a3457610a346130ab565b6020026020010151610625565b828281518110610a5357610a536130ab565b6020908102919091010152610a67816130f7565b90506109fc565b509392505050565b610a7e611a0a565b610a886000611df3565b565b610abe6040518060a00160405280600081526020016000815260200160008152602001600081526020016000151581525090565b50600091825260cd602090815260408084209284526005909201815291819020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff161515608082015290565b610b25611a0a565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613263565b610ba1338383611e45565b5050565b610bad611a0a565b610bb681611a64565b50565b600054610100900460ff1615808015610bd95750600054600160ff909116105b80610bf35750303b158015610bf3575060005460ff166001145b610c565760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161068c565b6000805460ff191660011790558015610c79576000805461ff0019166101001790555b610c9160405180602001604052806000815250611f25565b610c99611f55565b610ca284611df3565b600160cc5560c980546001600160a01b038086166001600160a01b03199283161790925560ca805485841690831617905560cb80549287169290911691909117905580156107c0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b8035600090815260cd602052604081206003810154909103610d645760405163746a696560e01b815260040160405180910390fd5b6020808301356000908152600583018252604090819020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff1615156080820152610dc081611f84565b610ddd576040516332f7a9d760e21b815260040160405180910390fd5b816002015483604001358360010154610df69190613280565b1115610e15576040516322eb5e9560e21b815260040160405180910390fd5b8060800151610ec45760ca546001600160a01b031663af92c48a853086356020880135610e4560608a018a613293565b6040518763ffffffff1660e01b8152600401610e66969594939291906132d9565b602060405180830381865afa158015610e83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea79190613263565b610ec4576040516352c973a760e01b815260040160405180910390fd5b60608101516001600160a01b038516600090815260ce602090815260408083208735845282528083208288013584529091529081902054610f089186013590613280565b1115610f2757604051631d66b65960e11b815260040160405180910390fd5b82604001358160400151610f3b9190613335565b3414610f5a576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b038416600090815260ce60209081526040808320863584528252808320828701358452909152808220805491860135929091610f9e908490613280565b925050819055508260400135826001016000828254610fbd9190613280565b909155505060408051602081018252600081526107c091869186359187013590611fbe565b610fea611a0a565b600083815260cd602052604081209082815b818110156110c5576000868683818110611018576110186130ab565b905060a0020180360381019061102e919061334c565b90508381600001511080611046575060208101518151115b1561106457604051632627b42d60e11b815260040160405180910390fd5b60008281526005860160209081526040918290208351808255918401516001820155918301516002830155606083015160038301556080909201516004909101805460ff191691151591909117905592506110be816130f7565b9050610ffc565b50600383018490556040518681527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a1505050505050565b806000816001600160401b03811115611123576111236129d7565b60405190808252806020026020018201604052801561114c578160200160208202803683370190505b5090506000826001600160401b03811115611169576111696129d7565b604051908082528060200260200182016040528015611192578160200160208202803683370190505b509050600080805b858110156116e35760cd60008989848181106111b8576111b86130ab565b90506020028101906111ca91906133c1565b600001358152602001908152602001600020915081600301546000036112035760405163746a696560e01b815260040160405180910390fd5b60008260050160008a8a8581811061121d5761121d6130ab565b905060200281019061122f91906133c1565b6020908101358252818101929092526040908101600020815160a08101835281548152600182015493810193909352600281015491830191909152600381015460608301526004015460ff1615156080820152905061128d81611f84565b6112aa576040516332f7a9d760e21b815260040160405180910390fd5b82600201548989848181106112c1576112c16130ab565b90506020028101906112d391906133c1565b6040013584600101546112e69190613280565b1115611305576040516322eb5e9560e21b815260040160405180910390fd5b806080015161141f5760ca546001600160a01b031663af92c48a8b308c8c87818110611333576113336130ab565b905060200281019061134591906133c1565b358d8d88818110611358576113586130ab565b905060200281019061136a91906133c1565b602001358e8e89818110611380576113806130ab565b905060200281019061139291906133c1565b6113a0906060810190613293565b6040518763ffffffff1660e01b81526004016113c1969594939291906132d9565b602060405180830381865afa1580156113de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114029190613263565b61141f576040516352c973a760e01b815260040160405180910390fd5b8060600151898984818110611436576114366130ab565b905060200281019061144891906133c1565b6001600160a01b038c16600090815260ce602052604080822092013591908c8c87818110611478576114786130ab565b905060200281019061148a91906133c1565b60000135815260200190815260200160002060008c8c878181106114b0576114b06130ab565b90506020028101906114c291906133c1565b602001358152602001908152602001600020546114df9190613280565b11156114fe57604051631d66b65960e11b815260040160405180910390fd5b888883818110611510576115106130ab565b905060200281019061152291906133c1565b6001600160a01b038b16600090815260ce602052604080822092013591908b8b86818110611552576115526130ab565b905060200281019061156491906133c1565b60000135815260200190815260200160002060008b8b8681811061158a5761158a6130ab565b905060200281019061159c91906133c1565b60200135815260200190815260200160002060008282546115bd9190613280565b9091555089905088838181106115d5576115d56130ab565b90506020028101906115e791906133c1565b604001358360010160008282546115fe9190613280565b909155508990508883818110611616576116166130ab565b905060200281019061162891906133c1565b60400135816040015161163b9190613335565b6116459085613280565b9350888883818110611659576116596130ab565b905060200281019061166b91906133c1565b60000135868381518110611681576116816130ab565b60200260200101818152505088888381811061169f5761169f6130ab565b90506020028101906116b191906133c1565b604001358583815181106116c7576116c76130ab565b6020908102919091010152506116dc816130f7565b905061119a565b50813414611704576040516318f4198360e21b815260040160405180910390fd5b61171f888585604051806020016040528060008152506120a9565b5050505050505050565b6001600160a01b0385163314806117455750611745853361056f565b6117615760405162461bcd60e51b815260040161068c90613215565b6108338585858585612204565b611776611a0a565b6001600160a01b0381166117db5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161068c565b610bb681611df3565b6117ec611a0a565b60c95460cb5460405163608ebea160e01b81526001600160a01b039182166004820152600060248201819052928392169063608ebea1906044016040805180830381865afa158015611842573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186691906133d7565b90925090506001600160a01b03821661189257604051632627b42d60e11b815260040160405180910390fd5b4760006127106118a28484613335565b6118ac9190613405565b905060006118ba8284613427565b90508015611938576000856001600160a01b03168260405160006040518083038185875af1925050503d806000811461190f576040519150601f19603f3d011682016040523d82523d6000602084013e611914565b606091505b505090508061193657604051631fa55c0760e11b815260040160405180910390fd5b505b81156108335760cb546040516000916001600160a01b03169084908381818185875af1925050503d806000811461198b576040519150601f19603f3d011682016040523d82523d6000602084013e611990565b606091505b50509050806119b257604051631fa55c0760e11b815260040160405180910390fd5b505050505050565b60006001600160e01b03198216636cdb3d1360e11b14806119eb57506001600160e01b031982166303a24d0760e21b145b806106ba57506301ffc9a760e01b6001600160e01b03198316146106ba565b6097546001600160a01b03163314610a885760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161068c565b6020810135158015611a8f57506000611a8360a0830160808401613054565b6001600160a01b031614155b80611ac057506000611aa760a0830160808401613054565b6001600160a01b0316148015611ac05750602081013515155b15611ade57604051632627b42d60e11b815260040160405180910390fd5b60cc54600090815260cd6020526040812060c95460cb549192916001600160a01b039182169163ae98d8579116611b1b60a0870160808801613054565b60cc546040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b96919061343a565b80835583356002840155602084013560048401559050611bb960a0840184613293565b6006840191611bc9919083613453565b50604083013515611c3457823560408401351115611bfa57604051632627b42d60e11b815260040160405180910390fd5b60408301356001830155611c34611c176080850160608601613054565b60cc54856040013560405180602001604052806000815250611fbe565b60cc8054906000611c44836130f7565b9190505550505050565b8151835114611c6f5760405162461bcd60e51b815260040161068c90613512565b6001600160a01b038416611c955760405162461bcd60e51b815260040161068c9061355a565b33611ca4818787878787612340565b60005b8451811015611d8d576000858281518110611cc457611cc46130ab565b602002602001015190506000858381518110611ce257611ce26130ab565b60209081029190910181015160008481526065835260408082206001600160a01b038e168352909352919091205490915081811015611d335760405162461bcd60e51b815260040161068c9061359f565b60008381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290611d72908490613280565b9250508190555050505080611d86906130f7565b9050611ca7565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611ddd9291906135e9565b60405180910390a46119b2818787878787612591565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b031603611eb85760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b606482015260840161068c565b6001600160a01b03838116600081815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b600054610100900460ff16611f4c5760405162461bcd60e51b815260040161068c90613617565b610bb6816126ec565b600054610100900460ff16611f7c5760405162461bcd60e51b815260040161068c90613617565b610a8861271c565b80516000908103611fa857604051632627b42d60e11b815260040160405180910390fd5b815142108015906106ba57505060200151421090565b6001600160a01b038416611fe45760405162461bcd60e51b815260040161068c90613662565b336000611ff08561274c565b90506000611ffd8561274c565b905061200e83600089858589612340565b60008681526065602090815260408083206001600160a01b038b16845290915281208054879290612040908490613280565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46120a083600089898989612797565b50505050505050565b6001600160a01b0384166120cf5760405162461bcd60e51b815260040161068c90613662565b81518351146120f05760405162461bcd60e51b815260040161068c90613512565b3361210081600087878787612340565b60005b845181101561219c5783818151811061211e5761211e6130ab565b60200260200101516065600087848151811061213c5761213c6130ab565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b0316815260200190815260200160002060008282546121849190613280565b90915550819050612194816130f7565b915050612103565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516121ed9291906135e9565b60405180910390a461083381600087878787612591565b6001600160a01b03841661222a5760405162461bcd60e51b815260040161068c9061355a565b3360006122368561274c565b905060006122438561274c565b9050612253838989858589612340565b60008681526065602090815260408083206001600160a01b038c168452909152902054858110156122965760405162461bcd60e51b815260040161068c9061359f565b60008781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906122d5908490613280565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612335848a8a8a8a8a612797565b505050505050505050565b8251600090815b818110156123a357600060cd6000888481518110612367576123676130ab565b6020026020010151815260200190815260200160002060040154111561239357612390836130f7565b92505b61239c816130f7565b9050612347565b506000826001600160401b038111156123be576123be6129d7565b6040519080825280602002602001820160405280156123e7578160200160208202803683370190505b5090506000836001600160401b03811115612404576124046129d7565b60405190808252806020026020018201604052801561242d578160200160208202803683370190505b5090506000805b8481101561251557600060cd60008b8481518110612454576124546130ab565b602002602001015181526020019081526020016000206004015411156125055760cd60008a838151811061248a5761248a6130ab565b60200260200101518152602001908152602001600020600001548483815181106124b6576124b66130ab565b6020026020010181815250508781815181106124d4576124d46130ab565b60200260200101518383815181106124ee576124ee6130ab565b6020908102919091010152612502826130f7565b91505b61250e816130f7565b9050612434565b5060c95460cb546040516365cb42dd60e11b81526001600160a01b039283169263cb9685ba92612552929116908e908e90899089906004016136a3565b600060405180830381600087803b15801561256c57600080fd5b505af1158015612580573d6000803e3d6000fd5b505050505050505050505050505050565b6001600160a01b0384163b156119b25760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906125d590899089908890889088906004016136e9565b6020604051808303816000875af1925050508015612610575060408051601f3d908101601f1916820190925261260d9181019061373b565b60015b6126bc5761261c613758565b806308c379a0036126555750612630613774565b8061263b5750612657565b8060405162461bcd60e51b815260040161068c9190612938565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e2d455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b606482015260840161068c565b6001600160e01b0319811663bc197c8160e01b146120a05760405162461bcd60e51b815260040161068c906137fd565b600054610100900460ff166127135760405162461bcd60e51b815260040161068c90613617565b610bb681612852565b600054610100900460ff166127435760405162461bcd60e51b815260040161068c90613617565b610a8833611df3565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612786576127866130ab565b602090810291909101015292915050565b6001600160a01b0384163b156119b25760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906127db9089908990889088908890600401613845565b6020604051808303816000875af1925050508015612816575060408051601f3d908101601f191682019092526128139181019061373b565b60015b6128225761261c613758565b6001600160e01b0319811663f23a6e6160e01b146120a05760405162461bcd60e51b815260040161068c906137fd565b6067610ba18282613156565b6001600160a01b0381168114610bb657600080fd5b6000806040838503121561288657600080fd5b82356128918161285e565b946020939093013593505050565b6001600160e01b031981168114610bb657600080fd5b6000602082840312156128c757600080fd5b81356128d28161289f565b9392505050565b6000602082840312156128eb57600080fd5b5035919050565b6000815180845260005b81811015612918576020818501810151868301820152016128fc565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006128d260208301846128f2565b60008083601f84011261295d57600080fd5b5081356001600160401b0381111561297457600080fd5b6020830191508360208260051b850101111561298f57600080fd5b9250929050565b600080602083850312156129a957600080fd5b82356001600160401b038111156129bf57600080fd5b6129cb8582860161294b565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b0381118282101715612a1257612a126129d7565b6040525050565b60006001600160401b03831115612a3257612a326129d7565b604051612a49601f8501601f1916602001826129ed565b809150838152848484011115612a5e57600080fd5b83836020830137600060208583010152509392505050565b60008060408385031215612a8957600080fd5b8235915060208301356001600160401b03811115612aa657600080fd5b8301601f81018513612ab757600080fd5b612ac685823560208401612a19565b9150509250929050565b60006001600160401b03821115612ae957612ae96129d7565b5060051b60200190565b600082601f830112612b0457600080fd5b81356020612b1182612ad0565b604051612b1e82826129ed565b83815260059390931b8501820192828101915086841115612b3e57600080fd5b8286015b84811015612b595780358352918301918301612b42565b509695505050505050565b600082601f830112612b7557600080fd5b6128d283833560208501612a19565b600080600080600060a08688031215612b9c57600080fd5b8535612ba78161285e565b94506020860135612bb78161285e565b935060408601356001600160401b0380821115612bd357600080fd5b612bdf89838a01612af3565b94506060880135915080821115612bf557600080fd5b612c0189838a01612af3565b93506080880135915080821115612c1757600080fd5b50612c2488828901612b64565b9150509295509295909350565b60008060408385031215612c4457600080fd5b50508035926020909101359150565b600080600060608486031215612c6857600080fd5b8335612c738161285e565b95602085013595506040909401359392505050565b86815285602082015284604082015283606082015282608082015260c060a08201526000612cb960c08301846128f2565b98975050505050505050565b60008060408385031215612cd857600080fd5b82356001600160401b0380821115612cef57600080fd5b818501915085601f830112612d0357600080fd5b81356020612d1082612ad0565b604051612d1d82826129ed565b83815260059390931b8501820192828101915089841115612d3d57600080fd5b948201945b83861015612d64578535612d558161285e565b82529482019490820190612d42565b96505086013592505080821115612d7a57600080fd5b50612ac685828601612af3565b600081518084526020808501945080840160005b83811015612db757815187529582019590820190600101612d9b565b509495945050505050565b6020815260006128d26020830184612d87565b8015158114610bb657600080fd5b60008060408385031215612df657600080fd5b8235612e018161285e565b91506020830135612e1181612dd5565b809150509250929050565b600060208284031215612e2e57600080fd5b81356001600160401b03811115612e4457600080fd5b820160c081850312156128d257600080fd5b600080600060608486031215612e6b57600080fd5b8335612e768161285e565b92506020840135612e868161285e565b91506040840135612e968161285e565b809150509250925092565b60008060408385031215612eb457600080fd5b8235612ebf8161285e565b915060208301356001600160401b03811115612eda57600080fd5b830160808186031215612e1157600080fd5b60008060408385031215612eff57600080fd5b8235612f0a8161285e565b91506020830135612e118161285e565b600080600060408486031215612f2f57600080fd5b8335925060208401356001600160401b0380821115612f4d57600080fd5b818601915086601f830112612f6157600080fd5b813581811115612f7057600080fd5b87602060a083028501011115612f8557600080fd5b6020830194508093505050509250925092565b600080600060408486031215612fad57600080fd5b8335612fb88161285e565b925060208401356001600160401b03811115612fd357600080fd5b612fdf8682870161294b565b9497909650939450505050565b600080600080600060a0868803121561300457600080fd5b853561300f8161285e565b9450602086013561301f8161285e565b9350604086013592506060860135915060808601356001600160401b0381111561304857600080fd5b612c2488828901612b64565b60006020828403121561306657600080fd5b81356128d28161285e565b600181811c9082168061308557607f821691505b6020821081036130a557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b6000823560be198336030181126130d757600080fd5b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b600060018201613109576131096130e1565b5060010190565b601f8211156107e957600081815260208120601f850160051c810160208610156131375750805b601f850160051c820191505b818110156119b257828155600101613143565b81516001600160401b0381111561316f5761316f6129d7565b6131838161317d8454613071565b84613110565b602080601f8311600181146131b857600084156131a05750858301515b600019600386901b1c1916600185901b1785556119b2565b600085815260208120601f198616915b828110156131e7578886015182559484019460019091019084016131c8565b50858210156132055787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252602e908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526d195c881bdc88185c1c1c9bdd995960921b606082015260800190565b60006020828403121561327557600080fd5b81516128d281612dd5565b808201808211156106ba576106ba6130e1565b6000808335601e198436030181126132aa57600080fd5b8301803591506001600160401b038211156132c457600080fd5b60200191503681900382131561298f57600080fd5b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905281018290526000828460c0840137600060c0848401015260c0601f19601f8501168301019050979650505050505050565b80820281158282048414176106ba576106ba6130e1565b600060a0828403121561335e57600080fd5b60405160a081018181106001600160401b0382111715613380576133806129d7565b80604052508235815260208301356020820152604083013560408201526060830135606082015260808301356133b581612dd5565b60808201529392505050565b60008235607e198336030181126130d757600080fd5b600080604083850312156133ea57600080fd5b82516133f58161285e565b6020939093015192949293505050565b60008261342257634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106ba576106ba6130e1565b60006020828403121561344c57600080fd5b5051919050565b6001600160401b0383111561346a5761346a6129d7565b61347e836134788354613071565b83613110565b6000601f8411600181146134b2576000851561349a5750838201355b600019600387901b1c1916600186901b178355610833565b600083815260209020601f19861690835b828110156134e357868501358255602094850194600190920191016134c3565b50868210156135005760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b6040815260006135fc6040830185612d87565b828103602084015261360e8185612d87565b95945050505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b6001600160a01b03868116825285811660208301528416604082015260a0606082018190526000906136d790830185612d87565b8281036080840152612cb98185612d87565b6001600160a01b0386811682528516602082015260a06040820181905260009061371590830186612d87565b82810360608401526137278186612d87565b90508281036080840152612cb981856128f2565b60006020828403121561374d57600080fd5b81516128d28161289f565b600060033d11156137715760046000803e5060005160e01c5b90565b600060443d10156137825790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156137b157505050505090565b82850191508151818111156137c95750505050505090565b843d87010160208285010111156137e35750505050505090565b6137f2602082860101876129ed565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061387f908301846128f2565b97965050505050505056fea2646970667358221220cf140f171ac2d5ea9a23d7d808cffff11645eee9fe1e63f3531c56345a29b58364736f6c63430008130033", + "nonce": "0x2d", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x4b490b6e1c0322cb15f1b35ca622e6b5740414e350846483ce215bf9741be21c", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0x3d0894B2aAfDD3A03092351F19d6F5c3EaA01475", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x28a433", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61239f80620000ee6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80638fd1101c11610104578063b81155b5116100a2578063df3d053b11610071578063df3d053b14610452578063ef1103d614610465578063f837232014610478578063fa3550671461048157600080fd5b8063b81155b5146103da578063cfc5a0c014610417578063d518b7ff1461042c578063d547741f1461043f57600080fd5b8063a217fddf116100de578063a217fddf14610383578063a626f5731461038b578063aa29f45e146103b4578063b08805a5146103c757600080fd5b80638fd1101c1461034a57806391d148541461035d5780639ab29f2b1461037057600080fd5b8063485cc9551161017157806378c5195e1161014b57806378c5195e146102fe57806387260f19146103115780638a69614e146103245780638c72c54e1461033757600080fd5b8063485cc955146102be5780636ce10ab6146102d1578063754b377c146102e457600080fd5b80632f2ff15d116101ad5780632f2ff15d1461026e57806336568abe146102835780633d695c521461029657806342f1e879146102a957600080fd5b806301ffc9a7146101d45780631d3b405a146101fc578063248a9ca31461023d575b600080fd5b6101e76101e2366004611a9a565b610494565b60405190151581526020015b60405180910390f35b61022561020a366004611ac4565b6098602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b61026061024b366004611ac4565b60009081526065602052604090206001015490565b6040519081526020016101f3565b61028161027c366004611af2565b6104cb565b005b610281610291366004611af2565b6104f5565b6102816102a4366004611b6d565b610578565b61026060008051602061234a83398151915281565b6102816102cc366004611bae565b6105bc565b6102816102df366004611bdc565b610718565b6102ec600181565b60405160ff90911681526020016101f3565b61026061030c366004611af2565b6107aa565b61028161031f366004611c1d565b6107d8565b610281610332366004611ac4565b61087b565b609754610225906001600160a01b031681565b610281610358366004611c88565b610888565b6101e761036b366004611af2565b6108d3565b61026061037e366004611af2565b6108fe565b610260600081565b610225610399366004611ac4565b6099602052600090815260409020546001600160a01b031681565b6102816103c2366004611af2565b610935565b6102816103d5366004611cce565b610957565b6103ed6103e8366004611ac4565b610979565b604080516001600160801b03948516815292841660208401529216918101919091526060016101f3565b61026060008051602061232a83398151915281565b61028161043a366004611cf0565b6109ae565b61028161044d366004611af2565b610a93565b610281610460366004611d92565b610ab8565b610281610473366004611dcb565b610b5c565b6102606103e881565b61028161048f366004611e16565b610bba565b60006001600160e01b03198216637965db0b60e01b14806104c557506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000828152606560205260409020600101546104e681610c03565b6104f08383610c0d565b505050565b6001600160a01b038116331461056a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6105748282610c93565b5050565b8060005b818110156105b6576105a684848381811061059957610599611e61565b9050602002013533610cfa565b6105af81611e8d565b905061057c565b50505050565b600054610100900460ff16158080156105dc5750600054600160ff909116105b806105f65750303b1580156105f6575060005460ff166001145b6106595760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610561565b6000805460ff19166001179055801561067c576000805461ff0019166101001790555b610684610d1e565b61068f600084610c0d565b61069a600033610c93565b6106b260008051602061234a83398151915283610c0d565b609780546001600160a01b0319166001600160a01b03851617905580156104f0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a1505050565b60008051602061234a83398151915261073081610c03565b60006107456001600160a01b03851684610d8b565b90508061076557604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260986020908152604080832080546001600160a01b039687166001600160a01b03199182161790915560999092529091208054929093169116179055565b6000828152609960205260408120546107ce906001600160a01b0316308585610eb0565b9695505050505050565b60008051602061232a8339815191526107f081610c03565b818460005b828110156108715760005b828110156108605761085089898381811061081d5761081d611e61565b9050602002013588888581811061083657610836611e61565b905060200201602081019061084b9190611ea6565b610cfa565b61085981611e8d565b9050610800565b5061086a81611e8d565b90506107f5565b5050505050505050565b6108858133610cfa565b50565b60008051602061234a8339815191526108a081610c03565b6108b685846108b16103e886611ec3565b610f5f565b6108cc84846108c76103e886611ec3565b611010565b5050505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600082815260996020526040812054610922906001600160a01b0316308585610eb0565b506001600160801b031695945050505050565b60008051602061232a83398151915261094d81610c03565b6104f08383610cfa565b60008051602061234a83398151915261096f81610c03565b6104f08383611066565b600081815260996020526040812054819081906109a0906001600160a01b031630866110e8565b919790965090945092505050565b60008051602061234a8339815191526109c681610c03565b838281146109e757604051632627b42d60e11b815260040160405180910390fd5b60005b81811015610a8857610a3589888884818110610a0857610a08611e61565b905060200201356103e8888886818110610a2457610a24611e61565b905060200201356108b19190611ec3565b610a7888888884818110610a4b57610a4b611e61565b905060200201356103e8888886818110610a6757610a67611e61565b905060200201356108c79190611ec3565b610a8181611e8d565b90506109ea565b505050505050505050565b600082815260656020526040902060010154610aae81610c03565b6104f08383610c93565b6000610ac381610c03565b81610b5257600084815260996020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610b2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b509190611eda565b505b6105b68484611066565b60008051602061232a833981519152610b7481610c03565b8260005b81811015610bb257610ba2868683818110610b9557610b95611e61565b9050602002013585610cfa565b610bab81611e8d565b9050610b78565b505050505050565b60008051602061232a833981519152610bd281610c03565b60005b828110156108cc57610bf38585858481811061083657610836611e61565b610bfc81611e8d565b9050610bd5565b610885813361118e565b610c1782826108d3565b6105745760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610c4f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610c9d82826108d3565b156105745760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000828152609960205260409020546104f0906001600160a01b03163084846111e7565b600054610100900460ff16610d895760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610561565b565b6000806000610d9985611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610dd757610dd7611ef7565b6040519080825280601f01601f191660200182016040528015610e01576020820181803683370190505b50604051602401610e1493929190611f5d565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610e5d93925090600401611f96565b6000604051808303816000875af1158015610e7c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ea49190810190611fdd565b50600195945050505050565b6000806000806000610ec1896114d9565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa158015610f28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4c91906120a5565b929c919b50995090975095505050505050565b6001600160a01b038316610f7257505050565b600082815260996020526040812054610f96906001600160a01b0316308587610eb0565b506001600160801b03169250505060008282610fb291906120f5565b11610fe157600083815260996020526040902054610fdb906001600160a01b031630858761163e565b506105b6565b6108cc8385610ff085856120f5565b6000878152609960205260409020546001600160a01b031692919061168c565b6001600160a01b03831661102357505050565b600082815260996020526040812054611047906001600160a01b0316308587610eb0565b506001600160801b0316925050506108cc83858484610ff09190612108565b60008281526099602052604081205461108a906001600160a01b0316308585611719565b506000848152609960205260409020549091506110b1906001600160a01b031684836117be565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910161070b565b60008060008060006110f9886114d9565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117c919061211b565b94509450945094505093509350935093565b61119882826108d3565b610574576111a5816118e6565b6111b08360206118f8565b6040516020016111c1929190612171565b60408051601f198184030181529082905262461bcd60e51b8252610561916004016121e6565b60008060006111f587611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b0381111561123557611235611ef7565b6040519080825280601f01601f19166020018201604052801561125f576020820181803683370190505b506040516024016112749594939291906121f9565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b03191682526112bd93925090600401611f96565b6000604051808303816000875af11580156112dc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113049190810190611fdd565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b0381166114a8576001600160a01b0382166113d757826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa1580156113b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d49190612239565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa15801561143b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061145f9190612239565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b0382166114be576114be612256565b6001600160a01b0381166114d4576114d4612256565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b0381166114a8576001600160a01b03821661159e57826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611577573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159b9190612239565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa158015611602573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116269190612239565b90506001600160a01b0382166114be576114be612256565b600080600061164c87611312565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b0381111561123557611235611ef7565b600080600061169a87611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b038111156116da576116da611ef7565b6040519080825280601f01601f191660200182016040528015611704576020820181803683370190505b5060405160240161127495949392919061226c565b6000806000611727876114d9565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa15801561178c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b091906122b3565b925092505094509492505050565b60008060006117cc86611312565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b0381111561180b5761180b611ef7565b6040519080825280601f01601f191660200182016040528015611835576020820181803683370190505b5060405160240161184994939291906122df565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261189293925090600401611f96565b6000604051808303816000875af11580156118b1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118d99190810190611fdd565b5060019695505050505050565b60606104c56001600160a01b03831660145b60606000611907836002611ec3565b611912906002612108565b6001600160401b0381111561192957611929611ef7565b6040519080825280601f01601f191660200182016040528015611953576020820181803683370190505b509050600360fc1b8160008151811061196e5761196e611e61565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061199d5761199d611e61565b60200101906001600160f81b031916908160001a90535060006119c1846002611ec3565b6119cc906001612108565b90505b6001811115611a44576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611a0057611a00611e61565b1a60f81b828281518110611a1657611a16611e61565b60200101906001600160f81b031916908160001a90535060049490941c93611a3d81612312565b90506119cf565b508315611a935760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610561565b9392505050565b600060208284031215611aac57600080fd5b81356001600160e01b031981168114611a9357600080fd5b600060208284031215611ad657600080fd5b5035919050565b6001600160a01b038116811461088557600080fd5b60008060408385031215611b0557600080fd5b823591506020830135611b1781611add565b809150509250929050565b60008083601f840112611b3457600080fd5b5081356001600160401b03811115611b4b57600080fd5b6020830191508360208260051b8501011115611b6657600080fd5b9250929050565b60008060208385031215611b8057600080fd5b82356001600160401b03811115611b9657600080fd5b611ba285828601611b22565b90969095509350505050565b60008060408385031215611bc157600080fd5b8235611bcc81611add565b91506020830135611b1781611add565b600080600060608486031215611bf157600080fd5b8335611bfc81611add565b92506020840135611c0c81611add565b929592945050506040919091013590565b60008060008060408587031215611c3357600080fd5b84356001600160401b0380821115611c4a57600080fd5b611c5688838901611b22565b90965094506020870135915080821115611c6f57600080fd5b50611c7c87828801611b22565b95989497509550505050565b60008060008060808587031215611c9e57600080fd5b8435611ca981611add565b93506020850135611cb981611add565b93969395505050506040820135916060013590565b60008060408385031215611ce157600080fd5b50508035926020909101359150565b60008060008060008060808789031215611d0957600080fd5b8635611d1481611add565b95506020870135611d2481611add565b945060408701356001600160401b0380821115611d4057600080fd5b611d4c8a838b01611b22565b90965094506060890135915080821115611d6557600080fd5b50611d7289828a01611b22565b979a9699509497509295939492505050565b801515811461088557600080fd5b600080600060608486031215611da757600080fd5b83359250602084013591506040840135611dc081611d84565b809150509250925092565b600080600060408486031215611de057600080fd5b83356001600160401b03811115611df657600080fd5b611e0286828701611b22565b9094509250506020840135611dc081611add565b600080600060408486031215611e2b57600080fd5b8335925060208401356001600160401b03811115611e4857600080fd5b611e5486828701611b22565b9497909650939450505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611e9f57611e9f611e77565b5060010190565b600060208284031215611eb857600080fd5b8135611a9381611add565b80820281158282048414176104c5576104c5611e77565b600060208284031215611eec57600080fd5b8151611a9381611d84565b634e487b7160e01b600052604160045260246000fd5b60005b83811015611f28578181015183820152602001611f10565b50506000910152565b60008151808452611f49816020860160208601611f0d565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090611f8d90830184611f31565b95945050505050565b6001600160a01b0383168152606060208201819052600090611fba90830184611f31565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b600060208284031215611fef57600080fd5b81516001600160401b038082111561200657600080fd5b818401915084601f83011261201a57600080fd5b81518181111561202c5761202c611ef7565b604051601f8201601f19908116603f0116810190838211818310171561205457612054611ef7565b8160405282815287602084870101111561206d57600080fd5b61207e836020830160208801611f0d565b979650505050505050565b80516001600160801b03811681146120a057600080fd5b919050565b600080600080608085870312156120bb57600080fd5b84516120c681611d84565b60208601519094506120d781611d84565b92506120e560408601612089565b6060959095015193969295505050565b818103818111156104c5576104c5611e77565b808201808211156104c5576104c5611e77565b6000806000806080858703121561213157600080fd5b845161213c81611d84565b935061214a60208601612089565b925061215860408601612089565b915061216660608601612089565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516121a9816017850160208801611f0d565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516121da816028840160208801611f0d565b01602801949350505050565b602081526000611a936020830184611f31565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061207e90830184611f31565b60006020828403121561224b57600080fd5b8151611a9381611add565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061207e90830184611f31565b600080604083850312156122c657600080fd5b825191506122d660208401612089565b90509250929050565b60018060a01b038516815263ffffffff841660208201528260408201526080606082015260006107ce6080830184611f31565b60008161232157612321611e77565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca264697066735822122092b0e50e4ae8020bc01793d015d9fc0503a0b339b20e0e5a4bd6ef82f54b2ec764736f6c63430008130033", + "nonce": "0x2e", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x619548bf2c4339c93f27bb592784cd39578ee81898f3e85ddc69ec08386730a7", + "transactionType": "CREATE", + "contractName": "ProxyAdmin", + "contractAddress": "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x8c2c2", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6106938061007e6000396000f3fe60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b506000606082860101526060601f19601f83011685010192505050939250505056fea26469706673582212204b6dc172c150b90d1b55e46cf1f95c1fb2c0fab05349712f70d4eb252200427064736f6c63430008130033", + "nonce": "0x2f", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x2920bf71b82f7656a597c4cce623764267b3e10b4657bc03342543677df6c1e7", + "transactionType": "CREATE", + "contractName": "ABVerifier", + "contractAddress": "0x6b5a2c172FDdcc15f0404c83E70F2f8ee54B2b23", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x16da46", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611366806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80637adaeebe116100ad578063cbc6512411610071578063cbc6512414610267578063ccac2c131461027a578063cfc5a0c01461028d578063d547741f146102b4578063ed9ec8c6146102c757600080fd5b80637adaeebe1461021357806391d1485414610226578063a217fddf14610239578063af92c48a14610241578063c4d66de81461025457600080fd5b806336568abe116100f457806336568abe146101bf5780633a774256146101d2578063437a0de9146101e55780634a96535b146101f8578063627cdcb91461020b57600080fd5b806301ffc9a7146101265780631180b5531461014e578063248a9ca3146101795780632f2ff15d146101aa575b600080fd5b610139610134366004610f66565b6102da565b60405190151581526020015b60405180910390f35b61016161015c366004610fac565b610311565b6040516001600160a01b039091168152602001610145565b61019c610187366004610fc7565b60009081526065602052604090206001015490565b604051908152602001610145565b6101bd6101b8366004610fe0565b61031c565b005b6101bd6101cd366004610fe0565b610346565b6101396101e036600461104e565b6103c9565b609754610161906001600160a01b031681565b6101bd610206366004610fac565b6104b0565b6101bd6104de565b6101bd610221366004610fac565b6104ff565b610139610234366004610fe0565b61052d565b61019c600081565b61013961024f3660046110a1565b610558565b6101bd610262366004610fac565b610661565b610139610275366004611119565b6107bf565b6101bd610288366004611188565b6108c0565b61019c7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b6101bd6102c2366004610fe0565b610919565b609854610161906001600160a01b031681565b60006001600160e01b03198216637965db0b60e01b148061030b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061030b8261093e565b60008281526065602052604090206001015461033781610970565b610341838361097d565b505050565b6001600160a01b03811633146103bb5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6103c58282610a03565b5050565b609a546040516001600160601b0319606086901b1660208201526034810191909152600090819060540160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061049684848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6098546001600160a01b0390811691161495945050505050565b60006104bb81610970565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006104e981610970565b609a600081546104f8906111c8565b9091555050565b600061050a81610970565b50609880546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000806105648761093e565b6040516001600160601b031960608b811b821660208401528a901b166034820152604881018890526068810187905290915060009060880160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061063f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6001600160a01b0316826001600160a01b031614925050509695505050505050565b600054610100900460ff16158080156106815750600054600160ff909116105b8061069b5750303b15801561069b575060005460ff166001145b6106fe5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016103b2565b6000805460ff191660011790558015610721576000805461ff0019166101001790555b6001600160a01b03821661074857604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b03841617905561076b610a8e565b610776600033610afb565b80156103c5576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6000806107cb8661093e565b6040516001600160601b031960608a811b8216602084015289901b1660348201526048810187905290915060009060680160408051601f198184030181529082905280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000091830191909152603c820152605c0160405160208183030381529060405280519060200120905061089f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508593925050610a6a9050565b6001600160a01b0316826001600160a01b0316149250505095945050505050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e6108ea81610970565b506001600160a01b03918216600090815260996020526040902080546001600160a01b03191691909216179055565b60008281526065602052604090206001015461093481610970565b6103418383610a03565b6097546001600160a01b038281166000908152609960205260409020549181169116801561096a578091505b50919050565b61097a8133610b05565b50565b610987828261052d565b6103c55760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556109bf3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610a0d828261052d565b156103c55760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610a798585610b5e565b91509150610a8681610ba3565b509392505050565b600054610100900460ff16610af95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016103b2565b565b6103c5828261097d565b610b0f828261052d565b6103c557610b1c81610ced565b610b27836020610cff565b604051602001610b38929190611205565b60408051601f198184030181529082905262461bcd60e51b82526103b29160040161127a565b6000808251604103610b945760208301516040840151606085015160001a610b8887828585610ea2565b94509450505050610b9c565b506000905060025b9250929050565b6000816004811115610bb757610bb76112ad565b03610bbf5750565b6001816004811115610bd357610bd36112ad565b03610c205760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016103b2565b6002816004811115610c3457610c346112ad565b03610c815760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016103b2565b6003816004811115610c9557610c956112ad565b0361097a5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016103b2565b606061030b6001600160a01b03831660145b60606000610d0e8360026112c3565b610d199060026112da565b67ffffffffffffffff811115610d3157610d316112ed565b6040519080825280601f01601f191660200182016040528015610d5b576020820181803683370190505b509050600360fc1b81600081518110610d7657610d76611303565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610da557610da5611303565b60200101906001600160f81b031916908160001a9053506000610dc98460026112c3565b610dd49060016112da565b90505b6001811115610e4c576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610e0857610e08611303565b1a60f81b828281518110610e1e57610e1e611303565b60200101906001600160f81b031916908160001a90535060049490941c93610e4581611319565b9050610dd7565b508315610e9b5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016103b2565b9392505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610ed95750600090506003610f5d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610f2d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610f5657600060019250925050610f5d565b9150600090505b94509492505050565b600060208284031215610f7857600080fd5b81356001600160e01b031981168114610e9b57600080fd5b80356001600160a01b0381168114610fa757600080fd5b919050565b600060208284031215610fbe57600080fd5b610e9b82610f90565b600060208284031215610fd957600080fd5b5035919050565b60008060408385031215610ff357600080fd5b8235915061100360208401610f90565b90509250929050565b60008083601f84011261101e57600080fd5b50813567ffffffffffffffff81111561103657600080fd5b602083019150836020828501011115610b9c57600080fd5b60008060006040848603121561106357600080fd5b61106c84610f90565b9250602084013567ffffffffffffffff81111561108857600080fd5b6110948682870161100c565b9497909650939450505050565b60008060008060008060a087890312156110ba57600080fd5b6110c387610f90565b95506110d160208801610f90565b94506040870135935060608701359250608087013567ffffffffffffffff8111156110fb57600080fd5b61110789828a0161100c565b979a9699509497509295939492505050565b60008060008060006080868803121561113157600080fd5b61113a86610f90565b945061114860208701610f90565b935060408601359250606086013567ffffffffffffffff81111561116b57600080fd5b6111778882890161100c565b969995985093965092949392505050565b6000806040838503121561119b57600080fd5b6111a483610f90565b915061100360208401610f90565b634e487b7160e01b600052601160045260246000fd5b6000600182016111da576111da6111b2565b5060010190565b60005b838110156111fc5781810151838201526020016111e4565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161123d8160178501602088016111e1565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161126e8160288401602088016111e1565b01602801949350505050565b60208152600082518060208401526112998160408501602087016111e1565b601f01601f19169190910160400192915050565b634e487b7160e01b600052602160045260246000fd5b808202811582820484141761030b5761030b6111b2565b8082018082111561030b5761030b6111b2565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081611328576113286111b2565b50600019019056fea2646970667358221220f66200a430c167ad4f1ae625723f35c23be8862c0bf9cba0bfccd975c30aafc764736f6c63430008130033", + "nonce": "0x30", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xb2ac168904f539873ef863f58a86efd1320b64c90593f780fe9b3506b588bd79", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x4A33991281e9E093D313855F7fcb54010415A895", + "function": null, + "arguments": [ + "0x6b5a2c172FDdcc15f0404c83E70F2f8ee54B2b23", + "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "0xc4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xcddbb", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c65640000000000000000000000006b5a2c172fddcc15f0404c83e70f2f8ee54b2b230000000000000000000000008cb15fb45a80a7ba5b393a60969e6d79520103c900000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x31", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x63ba3813fb764a76a6fffcee8d1189d2e6e5d7917ce225ea92a11642d7955857", + "transactionType": "CREATE", + "contractName": null, + "contractAddress": "0x02e9F15e49B58be57cedEF40F251fe2043f8Ae90", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x1b48fb", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611770806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638353b91911610104578063b9138580116100a2578063d547741f11610071578063d547741f146104fd578063da35a26f14610510578063dd3394aa14610523578063f0f442601461053657600080fd5b8063b9138580146104a4578063b9d47392146104c4578063c70eae8c146104d7578063cb9685ba146104ea57600080fd5b806391d14854116100de57806391d1485414610463578063977f82ba14610476578063a217fddf14610489578063ae98d8571461049157600080fd5b80638353b919146104115780638392767d146104245780638ffaa1401461043757600080fd5b80632f2ff15d1161017c5780635eb399681161014b5780635eb399681461036a578063608ebea1146103ac57806369ca69a5146103de57806371ef9a93146103fe57600080fd5b80632f2ff15d146102f357806336568abe1461030657806341859ac8146103195780635134b49a1461034757600080fd5b80630a4d85cd116101b85780630a4d85cd14610265578063145f8dd4146102a657806319742e6c146102bb578063248a9ca3146102d057600080fd5b806301ffc9a7146101df57806304a0fb1714610207578063069a9b641461023c575b600080fd5b6101f26101ed36600461123e565b610549565b60405190151581526020015b60405180910390f35b61022e7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee2781565b6040519081526020016101fe565b61022e61024a366004611284565b6001600160a01b031660009081526099602052604090205490565b61028e610273366004611284565b6098602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b61022e60008051602061171b83398151915281565b6102ce6102c936600461129f565b610580565b005b61022e6102de3660046112d9565b60009081526065602052604090206001015490565b6102ce6103013660046112f2565b6105da565b6102ce6103143660046112f2565b610604565b6101f2610327366004611284565b6001600160a01b0390811660009081526098602052604090205416151590565b6101f26103553660046112d9565b609c6020526000908152604090205460ff1681565b61037d6103783660046112d9565b610687565b6040805194855260208501939093526001600160a01b03918216928401929092521660608201526080016101fe565b6103bf6103ba36600461131e565b6106cd565b604080516001600160a01b0390931683526020830191909152016101fe565b61022e6103ec3660046112d9565b609d6020526000908152604090205481565b6102ce61040c36600461131e565b61072b565b6102ce61041f366004611348565b610790565b609b5461028e906001600160a01b031681565b61028e610445366004611284565b6001600160a01b039081166000908152609860205260409020541690565b6101f26104713660046112f2565b610864565b6102ce610484366004611384565b61088f565b61022e600081565b61022e61049f366004611348565b610937565b61022e6104b2366004611284565b60996020526000908152604090205481565b6102ce6104d23660046113d9565b610b2b565b6102ce6104e5366004611284565b610b8c565b6102ce6104f83660046114b4565b610bce565b6102ce61050b3660046112f2565b610c2d565b6102ce61051e3660046112f2565b610c52565b6102ce61053136600461154a565b610dc3565b6102ce610544366004611284565b610e6f565b60006001600160e01b03198216637965db0b60e01b148061057a57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600061058b81610e9d565b6127108211156105ae57604051632627b42d60e11b815260040160405180910390fd5b506000918252609c60209081526040808420805460ff191695151595909517909455609d905291902055565b6000828152606560205260409020600101546105f581610e9d565b6105ff8383610eaa565b505050565b6001600160a01b03811633146106795760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6106838282610f30565b5050565b609a818154811061069757600080fd5b60009182526020909120600490910201805460018201546002830154600390930154919350916001600160a01b03908116911684565b6000818152609c6020526040812054819060ff16156106fb57506000828152609d6020526040902054610716565b506001600160a01b0383166000908152609960205260409020545b609b546001600160a01b031694909350915050565b600061073681610e9d565b6001600160a01b038316600081815260996020908152604091829020859055815192835282018490527fc1c540da095b5b6d54738e18568e3c832ae9d1a26f1abeb3e69efde2d4fd6ec291015b60405180910390a1505050565b7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee276107ba81610e9d565b6001600160a01b0384811660009081526098602052604090205416156107f35760405163515567cf60e01b815260040160405180910390fd5b6001600160a01b03848116600081815260986020908152604080832080546001600160a01b0319169589169586179055609982529182902086905590519182527fb0c28f4dd5b8aa95e332651d07f6930a2f9d46ae2bc4bfa73e2f33e478a1269b910160405180910390a250505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60008051602061171b8339815191526108a781610e9d565b6001600160a01b03868116600090815260986020526040908190205490516323f4440760e21b81528783166004820152868316602482015260448101869052606481018590529116908190638fd1101c906084015b600060405180830381600087803b15801561091657600080fd5b505af115801561092a573d6000803e3d6000fd5b5050505050505050505050565b600060008051602061171b83398151915261095181610e9d565b610959610f97565b6040805160808101825282815260208082018781526001600160a01b038a81168486018181523360608701818152609a8054600181018255600091909152975160049098027f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be481019890985594517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be588015590517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be6870180549185166001600160a01b031992831617905593517f44da158ba27f9252712a74ff6a55c5d531f69609f1f6e7f17c4443a8e2089be790960180549690931695909316949094179055835190815290810191909152919350849184917f5cbfe9cceabf50e9fcfff39e46cd47b1667ad148238648e99aee4fa0e1193d43910160405180910390a36001600160a01b03841615610b23576001600160a01b0385811660009081526098602052604090819020549051633670855b60e11b8152336004820152868316602482015260448101859052911690636ce10ab690606401600060405180830381600087803b158015610b0a57600080fd5b505af1158015610b1e573d6000803e3d6000fd5b505050505b509392505050565b6000610b3681610e9d565b6001600160a01b038216610b5d57604051632627b42d60e11b815260040160405180910390fd5b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b7fdfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee27610bb681610e9d565b61068360008051602061171b83398151915283610eaa565b60008051602061171b833981519152610be681610e9d565b6001600160a01b038087166000908152609860205260409081902054905163d518b7ff60e01b8152911690819063d518b7ff906108fc9089908990899089906004016115a3565b600082815260656020526040902060010154610c4881610e9d565b6105ff8383610f30565b600054610100900460ff1615808015610c725750600054600160ff909116105b80610c8c5750303b158015610c8c575060005460ff166001145b610cef5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610670565b6000805460ff191660011790558015610d12576000805461ff0019166101001790555b610d1a610fb9565b610d25600033611026565b6097839055609b80546001600160a01b0319166001600160a01b03841690811790915560408051918252602082018590527fa4888636278c973bcfd5eca8f86d67bf0c980edbf1740721c6f229b0421ae1e2910160405180910390a180156105ff576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610783565b6000610dce81610e9d565b6001600160a01b038085166000908152609860205260409020541680610e0757604051632627b42d60e11b815260040160405180910390fd5b60405163b08805a560e01b815260048101859052602481018490526001600160a01b0382169063b08805a590604401600060405180830381600087803b158015610e5057600080fd5b505af1158015610e64573d6000803e3d6000fd5b505050505050505050565b6000610e7a81610e9d565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b610ea78133611030565b50565b610eb48282610864565b6106835760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610eec3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610f3a8282610864565b156106835760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b609a54609754600091610fa9916115f7565b610fb49060016115f7565b905090565b600054610100900460ff166110245760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610670565b565b6106838282610eaa565b61103a8282610864565b6106835761104781611089565b61105283602061109b565b60405160200161106392919061162e565b60408051601f198184030181529082905262461bcd60e51b8252610670916004016116a3565b606061057a6001600160a01b03831660145b606060006110aa8360026116d6565b6110b59060026115f7565b67ffffffffffffffff8111156110cd576110cd611403565b6040519080825280601f01601f1916602001820160405280156110f7576020820181803683370190505b509050600360fc1b81600081518110611112576111126116ed565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611141576111416116ed565b60200101906001600160f81b031916908160001a90535060006111658460026116d6565b6111709060016115f7565b90505b60018111156111e8576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106111a4576111a46116ed565b1a60f81b8282815181106111ba576111ba6116ed565b60200101906001600160f81b031916908160001a90535060049490941c936111e181611703565b9050611173565b5083156112375760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610670565b9392505050565b60006020828403121561125057600080fd5b81356001600160e01b03198116811461123757600080fd5b80356001600160a01b038116811461127f57600080fd5b919050565b60006020828403121561129657600080fd5b61123782611268565b6000806000606084860312156112b457600080fd5b833580151581146112c457600080fd5b95602085013595506040909401359392505050565b6000602082840312156112eb57600080fd5b5035919050565b6000806040838503121561130557600080fd5b8235915061131560208401611268565b90509250929050565b6000806040838503121561133157600080fd5b61133a83611268565b946020939093013593505050565b60008060006060848603121561135d57600080fd5b61136684611268565b925061137460208501611268565b9150604084013590509250925092565b600080600080600060a0868803121561139c57600080fd5b6113a586611268565b94506113b360208701611268565b93506113c160408701611268565b94979396509394606081013594506080013592915050565b600080604083850312156113ec57600080fd5b6113f583611268565b915061131560208401611268565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261142a57600080fd5b8135602067ffffffffffffffff8083111561144757611447611403565b8260051b604051601f19603f8301168101818110848211171561146c5761146c611403565b60405293845285810183019383810192508785111561148a57600080fd5b83870191505b848210156114a957813583529183019190830190611490565b979650505050505050565b600080600080600060a086880312156114cc57600080fd5b6114d586611268565b94506114e360208701611268565b93506114f160408701611268565b9250606086013567ffffffffffffffff8082111561150e57600080fd5b61151a89838a01611419565b9350608088013591508082111561153057600080fd5b5061153d88828901611419565b9150509295509295909350565b60008060006060848603121561155f57600080fd5b6112c484611268565b600081518084526020808501945080840160005b838110156115985781518752958201959082019060010161157c565b509495945050505050565b6001600160a01b038581168252841660208201526080604082018190526000906115cf90830185611568565b82810360608401526114a98185611568565b634e487b7160e01b600052601160045260246000fd5b8082018082111561057a5761057a6115e1565b60005b8381101561162557818101518382015260200161160d565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161166681601785016020880161160a565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161169781602884016020880161160a565b01602801949350505050565b60208152600082518060208401526116c281604085016020870161160a565b601f01601f19169190910160400192915050565b808202811582820484141761057a5761057a6115e1565b634e487b7160e01b600052603260045260246000fd5b600081611712576117126115e1565b50600019019056fe40a5c770eee7730548a6335e1f372e76bf4759f6fda1a932bd9cfc33106f0b4ca2646970667358221220ca2dc61d57487a62371bc74dd138bad9447ad75c86bac12783a70400e6327b7b64736f6c63430008130033", + "nonce": "0x32", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xd0661e501dc0fdcbae9a9f9f2d6b2a87894fd8ccaefd4e6175e483d926f9a1f1", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x7d4e9772AbE9EeB80df3d8c8Eec2A701f2CCA815", + "function": null, + "arguments": [ + "0x02e9F15e49B58be57cedEF40F251fe2043f8Ae90", + "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "0xda35a26f0000000000000000000000000000000000000000000000000000000000007530000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xd560f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656400000000000000000000000002e9f15e49b58be57cedef40f251fe2043f8ae900000000000000000000000008cb15fb45a80a7ba5b393a60969e6d79520103c900000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044da35a26f0000000000000000000000000000000000000000000000000000000000007530000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x33", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x28db13f624577b52cd6049a73fee1ee7c050955808c367a512d09240606deb21", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0xAa9E17Fa13c9EA49D2289A18DC6D840F221690Eb", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0x1c20a8", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611836806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80636b7e394911610104578063a217fddf116100a2578063d57f966b11610071578063d57f966b146103f3578063d8f4b6fd146103fc578063e442ac1814610411578063fdbda0ec1461042457600080fd5b8063a217fddf146103b0578063bdd2fe78146103b8578063cfc5a0c0146103cb578063d547741f146103e057600080fd5b8063832ca2f5116100de578063832ca2f5146103645780638d058ac81461037757806391d148541461038a5780639f1fb80d1461039d57600080fd5b80636b7e39491461032b5780636cc82b841461033e5780637d2405bb1461035157600080fd5b8063248a9ca3116101715780634128541c1161014b5780634128541c146102df5780634c7dfac3146102f2578063641254bd14610305578063678213491461031857600080fd5b8063248a9ca3146102885780632f2ff15d146102b957806336568abe146102cc57600080fd5b80631c8518c2116101ad5780631c8518c2146102245780631ce6e4441461024f5780631e5b368414610262578063229a8a821461027557600080fd5b806301ffc9a7146101d45780631459457a146101fc57806318c25d8a14610211575b600080fd5b6101e76101e2366004611348565b610457565b60405190151581526020015b60405180910390f35b61020f61020a366004611389565b61048e565b005b61020f61021f3660046113ee565b61060f565b609b54610237906001600160a01b031681565b6040516001600160a01b0390911681526020016101f3565b609a54610237906001600160a01b031681565b61020f610270366004611418565b61077f565b610237610283366004611418565b610831565b6102ab610296366004611418565b60009081526065602052604090206001015490565b6040519081526020016101f3565b61020f6102c7366004611431565b61084b565b61020f6102da366004611431565b610870565b609854610237906001600160a01b031681565b6101e761030036600461145d565b6108ee565b61020f61031336600461145d565b610908565b61020f610326366004611478565b610936565b61020f61033936600461145d565b6109d9565b609954610237906001600160a01b031681565b61020f61035f36600461145d565b610a09565b61020f61037236600461145d565b610a37565b610237610385366004611418565b610a65565b6101e7610398366004611431565b610a7f565b61020f6103ab366004611557565b610aaa565b6102ab600081565b609c54610237906001600160a01b031681565b6102ab6000805160206117c183398151915281565b61020f6103ee366004611431565b610bd4565b6102ab609d5481565b6102ab6000805160206117e183398151915281565b61020f61041f3660046115bd565b610bf9565b610437610432366004611418565b610ca5565b604080516001600160a01b039384168152929091166020830152016101f3565b60006001600160e01b03198216637965db0b60e01b148061048857506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156104ae5750600054600160ff909116105b806104c85750303b1580156104c8575060005460ff166001145b6105305760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610553576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d556105b6610cde565b6105c1600033610d4b565b8015610607576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b6000805160206117c183398151915261062781610d55565b61271082111561064a57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661067157604051632627b42d60e11b815260040160405180910390fd5b609c54600090610689906001600160a01b0316610d62565b60985460405163485cc95560e01b81526001600160a01b038781166004830152918216602482015291925082169063485cc95590604401600060405180830381600087803b1580156106da57600080fd5b505af11580156106ee573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b91991506064015b600060405180830381600087803b15801561074957600080fd5b505af115801561075d573d6000803e3d6000fd5b505050506107796000805160206117e18339815191528561084b565b50505050565b6000805160206117e183398151915261079781610d55565b609b546000906107b0906001600160a01b031684610dfc565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561080a57600080fd5b505af115801561081e573d6000803e3d6000fd5b5050505061082c8133610e99565b505050565b609a54600090610488906001600160a01b03168330610ff1565b60008281526065602052604090206001015461086681610d55565b61082c838361104d565b6001600160a01b03811633146108e05760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610527565b6108ea82826110d3565b5050565b60006104886000805160206117e183398151915283610a7f565b600061091381610d55565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b6000805160206117c183398151915261094e81610d55565b61271082111561097157604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03841661099857604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b9199060640161072f565b6000805160206117c18339815191526109f181610d55565b6108ea6000805160206117e183398151915283610bd4565b6000610a1481610d55565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610a4281610d55565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b609b54600090610488906001600160a01b03168330610ff1565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000805160206117c1833981519152610ac281610d55565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610b0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b309190611602565b610b4d57604051634f3bd42760e01b815260040160405180910390fd5b6000610b598684610dfc565b60985460995460405163197a393d60e21b81529293506001600160a01b03808516936365e8e4f493610b98938b93918216929116908a90600401611674565b600060405180830381600087803b158015610bb257600080fd5b505af1158015610bc6573d6000803e3d6000fd5b505050506106078186610e99565b600082815260656020526040902060010154610bef81610d55565b61082c83836110d3565b6000805160206117e1833981519152610c1181610d55565b609a54600090610c2a906001600160a01b031684610dfc565b60985460995460405163197a393d60e21b81529293506001600160a01b03808516936365e8e4f493610c69933393918216929116908a90600401611674565b600060405180830381600087803b158015610c8357600080fd5b505af1158015610c97573d6000803e3d6000fd5b505050506107798133610e99565b60978181548110610cb557600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff16610d495760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610527565b565b6108ea828261104d565b610d5f813361113a565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b038116610df75760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b6044820152606401610527565b919050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b0381166104885760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c65640000000000000000006044820152606401610527565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c90610f6f9085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b158015610f8957600080fd5b505af1158015610f9d573d6000803e3d6000fd5b50505050609d60008154610fb0906116c8565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6110578282610a7f565b6108ea5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561108f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6110dd8282610a7f565b156108ea5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6111448282610a7f565b6108ea5761115181611193565b61115c8360206111a5565b60405160200161116d9291906116e1565b60408051601f198184030181529082905262461bcd60e51b825261052791600401611756565b60606104886001600160a01b03831660145b606060006111b4836002611769565b6111bf906002611780565b67ffffffffffffffff8111156111d7576111d76114b4565b6040519080825280601f01601f191660200182016040528015611201576020820181803683370190505b509050600360fc1b8160008151811061121c5761121c611793565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061124b5761124b611793565b60200101906001600160f81b031916908160001a905350600061126f846002611769565b61127a906001611780565b90505b60018111156112f2576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106112ae576112ae611793565b1a60f81b8282815181106112c4576112c4611793565b60200101906001600160f81b031916908160001a90535060049490941c936112eb816117a9565b905061127d565b5083156113415760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610527565b9392505050565b60006020828403121561135a57600080fd5b81356001600160e01b03198116811461134157600080fd5b80356001600160a01b0381168114610df757600080fd5b600080600080600060a086880312156113a157600080fd5b6113aa86611372565b94506113b860208701611372565b93506113c660408701611372565b92506113d460608701611372565b91506113e260808701611372565b90509295509295909350565b6000806040838503121561140157600080fd5b61140a83611372565b946020939093013593505050565b60006020828403121561142a57600080fd5b5035919050565b6000806040838503121561144457600080fd5b8235915061145460208401611372565b90509250929050565b60006020828403121561146f57600080fd5b61134182611372565b60008060006060848603121561148d57600080fd5b61149684611372565b92506114a460208501611372565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126114db57600080fd5b813567ffffffffffffffff808211156114f6576114f66114b4565b604051601f8301601f19908116603f0116810190828211818310171561151e5761151e6114b4565b8160405283815286602085880101111561153757600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561156d57600080fd5b61157685611372565b935061158460208601611372565b9250604085013567ffffffffffffffff8111156115a057600080fd5b6115ac878288016114ca565b949793965093946060013593505050565b600080604083850312156115d057600080fd5b823567ffffffffffffffff8111156115e757600080fd5b6115f3858286016114ca565b95602094909401359450505050565b60006020828403121561161457600080fd5b8151801515811461134157600080fd5b60005b8381101561163f578181015183820152602001611627565b50506000910152565b60008151808452611660816020860160208601611624565b601f01601f19169290920160200192915050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190526000906116a890830184611648565b9695505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016116da576116da6116b2565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611719816017850160208801611624565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161174a816028840160208801611624565b01602801949350505050565b6020815260006113416020830184611648565b8082028115828204841417610488576104886116b2565b80820180821115610488576104886116b2565b634e487b7160e01b600052603260045260246000fd5b6000816117b8576117b86116b2565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220e8261c01885e610fa152a11d1ee93f6170146b932119b0773109f6e03291865064736f6c63430008130033", + "nonce": "0x34", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xc2e0e10570635c5cd0f57f148cfb64dc3ff963c828ee84d2b9387131c9e9f142", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xc8C36aea082ABaEC51029fe16Fc3e1641Ac213FD", + "function": null, + "arguments": [ + "0xAa9E17Fa13c9EA49D2289A18DC6D840F221690Eb", + "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "0x1459457a0000000000000000000000007d4e9772abe9eeb80df3d8c8eec2a701f2cca8150000000000000000000000004a33991281e9e093d313855f7fcb54010415a895000000000000000000000000eb7c4b1c64222a05958da577f1ffecde445eb2040000000000000000000000001e7b76cb83e6638c504e03a36bb69500457e86110000000000000000000000003d0894b2aafdd3a03092351f19d6f5c3eaa01475" + ], + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "gas": "0xeb66f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000aa9e17fa13c9ea49d2289a18dc6d840f221690eb0000000000000000000000008cb15fb45a80a7ba5b393a60969e6d79520103c9000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a41459457a0000000000000000000000007d4e9772abe9eeb80df3d8c8eec2a701f2cca8150000000000000000000000004a33991281e9e093d313855f7fcb54010415a895000000000000000000000000eb7c4b1c64222a05958da577f1ffecde445eb2040000000000000000000000001e7b76cb83e6638c504e03a36bb69500457e86110000000000000000000000003d0894b2aafdd3a03092351f19d6f5c3eaa0147500000000000000000000000000000000000000000000000000000000", + "nonce": "0x35", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xeaa22f6aa882f7c817abd8b4ba8de64d117777583c7ddbac075877e78a279df0", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x7d4e9772AbE9EeB80df3d8c8Eec2A701f2CCA815", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x7d4e9772abe9eeb80df3d8c8eec2a701f2cca815", + "gas": "0x14fbd", + "value": "0x0", + "data": "0x2f2ff15ddfbefbf47cfe66b701d8cfdbce1de81c821590819cb07e71cb01b6602fb0ee27000000000000000000000000c8c36aea082abaec51029fe16fc3e1641ac213fd", + "nonce": "0x36", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x8a8b83817ffc875822092ffb23c66fb626b7e26e2acc7da4474a80e6aae6b73b", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xc8C36aea082ABaEC51029fe16Fc3e1641Ac213FD", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0xc8c36aea082abaec51029fe16fc3e1641ac213fd", + "gas": "0x14fcb", + "value": "0x0", + "data": "0x2f2ff15d2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "nonce": "0x37", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x9b116ab3cfc6755834eab7e7ea398ff41627ff596c26069caeb83a1988e80357", + "transactionType": "CALL", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0x4A33991281e9E093D313855F7fcb54010415A895", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xed1a447270a92d23b716a1cf52b1f9c358f447ee", + "to": "0x4a33991281e9e093d313855f7fcb54010415a895", + "gas": "0x1213a", + "value": "0x0", + "data": "0x7adaeebe000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "nonce": "0x38", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0x9b116ab3cfc6755834eab7e7ea398ff41627ff596c26069caeb83a1988e80357", + "transactionIndex": "0x0", + "blockHash": "0xfbca9dc9797ad1ce4e7ca1c61e0e71dd03a29b25f394100bf61caafde50fa300", + "blockNumber": "0x4bdbc1", + "from": "0xD22a47CFE06d69f678Ae08ff7B47C0b29c31c978", + "to": "0x876F05312fC98b89e0152155e8eFdC1ee7C4830e", + "cumulativeGasUsed": "0x5208", + "gasUsed": "0x5208", + "contractAddress": null, + "logs": [], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x0", + "effectiveGasPrice": "0x16bcc41e9000" + }, + { + "transactionHash": "0x4b490b6e1c0322cb15f1b35ca622e6b5740414e350846483ce215bf9741be21c", + "transactionIndex": "0x3", + "blockHash": "0xa7fdd08a107cceb7a14126c404052e5c520ea6af3bc61b9338c6118faffa2c4c", + "blockNumber": "0x97695c", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x63c0ac", + "gasUsed": "0x1f4585", + "contractAddress": "0x1E7B76cB83E6638c504E03a36bB69500457E8611", + "logs": [ + { + "address": "0x1E7B76cB83E6638c504E03a36bB69500457E8611", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xa7fdd08a107cceb7a14126c404052e5c520ea6af3bc61b9338c6118faffa2c4c", + "blockNumber": "0x97695c", + "transactionHash": "0x4b490b6e1c0322cb15f1b35ca622e6b5740414e350846483ce215bf9741be21c", + "transactionIndex": "0x3", + "logIndex": "0x4", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000040000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f17" + }, + { + "transactionHash": "0xbcee3fd358fb73da57f394fb8cb7f044347edcc55642f05d75c2b2cd3afe63d8", + "transactionIndex": "0x4", + "blockHash": "0xa7fdd08a107cceb7a14126c404052e5c520ea6af3bc61b9338c6118faffa2c4c", + "blockNumber": "0x97695c", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x8a787e", + "gasUsed": "0x26b7d2", + "contractAddress": "0x3d0894B2aAfDD3A03092351F19d6F5c3EaA01475", + "logs": [ + { + "address": "0x3d0894B2aAfDD3A03092351F19d6F5c3EaA01475", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xa7fdd08a107cceb7a14126c404052e5c520ea6af3bc61b9338c6118faffa2c4c", + "blockNumber": "0x97695c", + "transactionHash": "0xbcee3fd358fb73da57f394fb8cb7f044347edcc55642f05d75c2b2cd3afe63d8", + "transactionIndex": "0x4", + "logIndex": "0x5", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f17" + }, + { + "transactionHash": "0x63ba3813fb764a76a6fffcee8d1189d2e6e5d7917ce225ea92a11642d7955857", + "transactionIndex": "0x1", + "blockHash": "0xd61ef7ef7cd18a756bc37b0999541a7a79b8eb95bd9d9185d1ebea69ce7c76cd", + "blockNumber": "0x97695d", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x16ac37", + "gasUsed": "0x14fe96", + "contractAddress": "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "logs": [ + { + "address": "0x8cb15FB45a80A7BA5b393a60969e6d79520103c9", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd61ef7ef7cd18a756bc37b0999541a7a79b8eb95bd9d9185d1ebea69ce7c76cd", + "blockNumber": "0x97695d", + "transactionHash": "0x63ba3813fb764a76a6fffcee8d1189d2e6e5d7917ce225ea92a11642d7955857", + "transactionIndex": "0x1", + "logIndex": "0x1", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000001000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f1e" + }, + { + "transactionHash": "0x2920bf71b82f7656a597c4cce623764267b3e10b4657bc03342543677df6c1e7", + "transactionIndex": "0x2", + "blockHash": "0xd61ef7ef7cd18a756bc37b0999541a7a79b8eb95bd9d9185d1ebea69ce7c76cd", + "blockNumber": "0x97695d", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x2841b3", + "gasUsed": "0x11957c", + "contractAddress": "0x6b5a2c172FDdcc15f0404c83E70F2f8ee54B2b23", + "logs": [ + { + "address": "0x6b5a2c172FDdcc15f0404c83E70F2f8ee54B2b23", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd61ef7ef7cd18a756bc37b0999541a7a79b8eb95bd9d9185d1ebea69ce7c76cd", + "blockNumber": "0x97695d", + "transactionHash": "0x2920bf71b82f7656a597c4cce623764267b3e10b4657bc03342543677df6c1e7", + "transactionIndex": "0x2", + "logIndex": "0x2", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000080000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f1e" + }, + { + "transactionHash": "0x666955695220123c2228f59ccebac46b0078c08d2c0b822aeacf4594afdcc442", + "transactionIndex": "0x8", + "blockHash": "0x29c59fe31e11762d01fbb1b8afe5fe31509662da3d21b14e86057129ab289067", + "blockNumber": "0x97695e", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x10de41b", + "gasUsed": "0x311af5", + "contractAddress": "0xAa9E17Fa13c9EA49D2289A18DC6D840F221690Eb", + "logs": [ + { + "address": "0xAa9E17Fa13c9EA49D2289A18DC6D840F221690Eb", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x29c59fe31e11762d01fbb1b8afe5fe31509662da3d21b14e86057129ab289067", + "blockNumber": "0x97695e", + "transactionHash": "0x666955695220123c2228f59ccebac46b0078c08d2c0b822aeacf4594afdcc442", + "transactionIndex": "0x8", + "logIndex": "0xc", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000800000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f34" + }, + { + "transactionHash": "0x619548bf2c4339c93f27bb592784cd39578ee81898f3e85ddc69ec08386730a7", + "transactionIndex": "0x2", + "blockHash": "0x28785be88e07fb14ea34ff028fcf39e800b67b93b64cbf07584924c02e321868", + "blockNumber": "0x97695f", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x39db65", + "gasUsed": "0x6bda5", + "contractAddress": "0xc8C36aea082ABaEC51029fe16Fc3e1641Ac213FD", + "logs": [ + { + "address": "0xc8C36aea082ABaEC51029fe16Fc3e1641Ac213FD", + "topics": [ + "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000ed1a447270a92d23b716a1cf52b1f9c358f447ee" + ], + "data": "0x", + "blockHash": "0x28785be88e07fb14ea34ff028fcf39e800b67b93b64cbf07584924c02e321868", + "blockNumber": "0x97695f", + "transactionHash": "0x619548bf2c4339c93f27bb592784cd39578ee81898f3e85ddc69ec08386730a7", + "transactionIndex": "0x2", + "logIndex": "0x3", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000002000000000000000001000000000000000000000000000000000000020000000000000000000800000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000040000000000000000000000000000000000000000000000008000000000000000000020000000000000000000000000000000000000000000000000000000000000000400", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f5a" + }, + { + "transactionHash": "0x28db13f624577b52cd6049a73fee1ee7c050955808c367a512d09240606deb21", + "transactionIndex": "0x4", + "blockHash": "0x28785be88e07fb14ea34ff028fcf39e800b67b93b64cbf07584924c02e321868", + "blockNumber": "0x97695f", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": null, + "cumulativeGasUsed": "0x51c5f2", + "gasUsed": "0x15a48c", + "contractAddress": "0x34a72e152F3EbC30316D6C1e4fc11f645008c200", + "logs": [ + { + "address": "0x34a72e152F3EbC30316D6C1e4fc11f645008c200", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x28785be88e07fb14ea34ff028fcf39e800b67b93b64cbf07584924c02e321868", + "blockNumber": "0x97695f", + "transactionHash": "0x28db13f624577b52cd6049a73fee1ee7c050955808c367a512d09240606deb21", + "transactionIndex": "0x4", + "logIndex": "0x8", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000200000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f5a" + }, + { + "transactionHash": "0xeaa22f6aa882f7c817abd8b4ba8de64d117777583c7ddbac075877e78a279df0", + "transactionIndex": "0x5", + "blockHash": "0xcb8d084c995ee4ef0709bb8de9e2f4bd8891b6a853c2222ab5b89f8cb2f83c73", + "blockNumber": "0x976960", + "from": "0xed1a447270A92D23B716a1CF52B1f9C358f447Ee", + "to": "0x7d4e9772AbE9EeB80df3d8c8Eec2A701f2CCA815", + "cumulativeGasUsed": "0xc421a", + "gasUsed": "0x55b8", + "contractAddress": null, + "logs": [], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f74" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1698150989, + "chain": 5, + "multi": false, + "commit": "9a7b2c3" +} \ No newline at end of file diff --git a/deployment/5/ABDataRegistry/address b/deployment/5/ABDataRegistry/address new file mode 100644 index 0000000..0c73a7a --- /dev/null +++ b/deployment/5/ABDataRegistry/address @@ -0,0 +1 @@ +0x7d4e9772AbE9EeB80df3d8c8Eec2A701f2CCA815 \ No newline at end of file diff --git a/deployment/5/ABVerifier/address b/deployment/5/ABVerifier/address new file mode 100644 index 0000000..1987b0e --- /dev/null +++ b/deployment/5/ABVerifier/address @@ -0,0 +1 @@ +0x4A33991281e9E093D313855F7fcb54010415A895 \ No newline at end of file diff --git a/deployment/5/AnotherCloneFactory/address b/deployment/5/AnotherCloneFactory/address new file mode 100644 index 0000000..a4e61bd --- /dev/null +++ b/deployment/5/AnotherCloneFactory/address @@ -0,0 +1 @@ +0xc8C36aea082ABaEC51029fe16Fc3e1641Ac213FD \ No newline at end of file diff --git a/deployment/5/ProxyAdmin/address b/deployment/5/ProxyAdmin/address new file mode 100644 index 0000000..b3ecf3e --- /dev/null +++ b/deployment/5/ProxyAdmin/address @@ -0,0 +1 @@ +0x8cb15FB45a80A7BA5b393a60969e6d79520103c9 \ No newline at end of file diff --git a/forge-cache/deploy-platform.s.sol/5/run-1698150793.json b/forge-cache/deploy-platform.s.sol/5/run-1698150793.json new file mode 100644 index 0000000..aeb6df7 --- /dev/null +++ b/forge-cache/deploy-platform.s.sol/5/run-1698150793.json @@ -0,0 +1,40 @@ +{ + "transactions": [ + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-platform.s.sol/5/run-1698150824.json b/forge-cache/deploy-platform.s.sol/5/run-1698150824.json new file mode 100644 index 0000000..aeb6df7 --- /dev/null +++ b/forge-cache/deploy-platform.s.sol/5/run-1698150824.json @@ -0,0 +1,40 @@ +{ + "transactions": [ + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-platform.s.sol/5/run-1698150988.json b/forge-cache/deploy-platform.s.sol/5/run-1698150988.json new file mode 100644 index 0000000..58ade80 --- /dev/null +++ b/forge-cache/deploy-platform.s.sol/5/run-1698150988.json @@ -0,0 +1,43 @@ +{ + "transactions": [ + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-platform.s.sol/5/run-1698150989.json b/forge-cache/deploy-platform.s.sol/5/run-1698150989.json new file mode 100644 index 0000000..58ade80 --- /dev/null +++ b/forge-cache/deploy-platform.s.sol/5/run-1698150989.json @@ -0,0 +1,43 @@ +{ + "transactions": [ + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-platform.s.sol/5/run-latest.json b/forge-cache/deploy-platform.s.sol/5/run-latest.json new file mode 100644 index 0000000..58ade80 --- /dev/null +++ b/forge-cache/deploy-platform.s.sol/5/run-latest.json @@ -0,0 +1,43 @@ +{ + "transactions": [ + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + }, + { + "rpc": "http://127.0.0.1:8545/6e102f31-2d0d-43ca-b83b-d39fb3ec2e45" + } + ] +} \ No newline at end of file diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index aee6e9c..07d97d2 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -5299,6 +5299,792 @@ } } }, + "script/base-goerli/fireblocks/create-publisher.s.sol": { + "lastModificationDate": 1698139111530, + "contentHash": "e2267180499cb7133e1684156d386c07", + "sourceName": "script/base-goerli/fireblocks/create-publisher.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", + "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/factory/AnotherCloneFactory.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/token/ERC1155/ERC1155AB.sol", + "src/token/ERC721/ERC721AB.sol", + "src/utils/IABDataRegistry.sol", + "src/utils/IABVerifier.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "CreatePublisher": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/create-publisher.s.sol/CreatePublisher.json" + } + } + }, + "script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol": { + "lastModificationDate": 1698139177138, + "contentHash": "39c6890b24873accfd9bc008fcfd019a", + "sourceName": "script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", + "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", + "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", + "test/_mocks/ABSuperToken.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployMockSuperToken": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" + } + } + }, + "script/base-goerli/fireblocks/deploy-platform.s.sol": { + "lastModificationDate": 1698139748461, + "contentHash": "5a4dddc9c6de5f8231c8f2115aa0e697", + "sourceName": "script/base-goerli/fireblocks/deploy-platform.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", + "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/access/Ownable.sol", + "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", + "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", + "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/Context.sol", + "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/factory/AnotherCloneFactory.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/token/ERC1155/ERC1155AB.sol", + "src/token/ERC721/ERC721AB.sol", + "src/token/ERC721/ERC721ABLE.sol", + "src/utils/ABDataRegistry.sol", + "src/utils/ABVerifier.sol", + "src/utils/IABDataRegistry.sol", + "src/utils/IABVerifier.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployPlatform": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/deploy-platform.s.sol/DeployPlatform.json" + } + } + }, + "script/base-goerli/fireblocks/deploy-royalty.s.sol": { + "lastModificationDate": 1698139111532, + "contentHash": "8f8077a3a079d877814bee151a073325", + "sourceName": "script/base-goerli/fireblocks/deploy-royalty.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", + "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/utils/ABDataRegistry.sol", + "src/utils/IABDataRegistry.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployRoyalty": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/deploy-royalty.s.sol/DeployRoyalty.json" + } + } + }, + "script/goerli/fireblocks/create-publisher.s.sol": { + "lastModificationDate": 1698150578995, + "contentHash": "e2267180499cb7133e1684156d386c07", + "sourceName": "script/goerli/fireblocks/create-publisher.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", + "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/factory/AnotherCloneFactory.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/token/ERC1155/ERC1155AB.sol", + "src/token/ERC721/ERC721AB.sol", + "src/utils/IABDataRegistry.sol", + "src/utils/IABVerifier.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "CreatePublisher": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json" + } + } + }, + "script/goerli/fireblocks/deploy-ABSuperToken.s.sol": { + "lastModificationDate": 1698150578995, + "contentHash": "39c6890b24873accfd9bc008fcfd019a", + "sourceName": "script/goerli/fireblocks/deploy-ABSuperToken.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", + "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", + "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", + "test/_mocks/ABSuperToken.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployMockSuperToken": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" + } + } + }, + "script/goerli/fireblocks/deploy-platform.s.sol": { + "lastModificationDate": 1698150758009, + "contentHash": "d2df49e2b397e165bc19a345a3c1d6c7", + "sourceName": "script/goerli/fireblocks/deploy-platform.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", + "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/access/Ownable.sol", + "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", + "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", + "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/Context.sol", + "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/factory/AnotherCloneFactory.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/token/ERC1155/ERC1155AB.sol", + "src/token/ERC721/ERC721AB.sol", + "src/token/ERC721/ERC721ABLE.sol", + "src/utils/ABDataRegistry.sol", + "src/utils/ABVerifier.sol", + "src/utils/IABDataRegistry.sol", + "src/utils/IABVerifier.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployPlatform": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json" + } + } + }, + "script/goerli/fireblocks/deploy-royalty.s.sol": { + "lastModificationDate": 1698150578996, + "contentHash": "8f8077a3a079d877814bee151a073325", + "sourceName": "script/goerli/fireblocks/deploy-royalty.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", + "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/utils/ABDataRegistry.sol", + "src/utils/IABDataRegistry.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployRoyalty": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json" + } + } + }, "script/op/deploy-ABSuperToken.s.sol": { "lastModificationDate": 1693465366217, "contentHash": "1d056aa991c6d5dfab2d1e455afd5113", From 4bc55a1d5a4653b9051670adc86503a69e1009f2 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Fri, 27 Oct 2023 11:46:12 +0200 Subject: [PATCH 08/74] fireblocks integration env vars --- .env.example | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.env.example b/.env.example index c3a5324..7326cff 100644 --- a/.env.example +++ b/.env.example @@ -26,4 +26,11 @@ OPTIMISM_GOERLI_RELAYER_KEY= OPTIMISM_GOERLI_RELAYER_SECRET= ARBITRUM_GOERLI_RELAYER_KEY= -ARBITRUM_GOERLI_RELAYER_SECRET= \ No newline at end of file +ARBITRUM_GOERLI_RELAYER_SECRET= + + +# FireBlock Integration +FIREBLOCKS_API_KEY= +FIREBLOCKS_API_PRIVATE_KEY_PATH= +FIREBLOCKS_CHAIN_ID= +FIREBLOCKS_API_BASE_URL= \ No newline at end of file From 1da4b6c2b48232cedb05fd7a9894f8eb1ab36dd6 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 31 Oct 2023 10:52:02 +0100 Subject: [PATCH 09/74] init draft ERC721ABLECoin --- src/token/ERC721/ERC721ABLECoin.sol | 184 ++++++++++++++++++++++++++++ 1 file changed, 184 insertions(+) create mode 100644 src/token/ERC721/ERC721ABLECoin.sol diff --git a/src/token/ERC721/ERC721ABLECoin.sol b/src/token/ERC721/ERC721ABLECoin.sol new file mode 100644 index 0000000..e97a0be --- /dev/null +++ b/src/token/ERC721/ERC721ABLECoin.sol @@ -0,0 +1,184 @@ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ████████████████████████ ██████████ +// ████████████████████████ ██████████ +// ████████████████████████ ██████████ +// ████████████████████████ ██████████ +// ████████████████████ +// ████████████████████ +// ████████████████████ +// ████████████████████ +// +// +// █████╗ ███╗ ██╗ ██████╗ ████████╗██╗ ██╗███████╗██████╗ ██████╗ ██╗ ██████╗ ██████╗██╗ ██╗ +// ██╔══██╗████╗ ██║██╔═══██╗╚══██╔══╝██║ ██║██╔════╝██╔══██╗██╔══██╗██║ ██╔═══██╗██╔════╝██║ ██╔╝ +// ███████║██╔██╗ ██║██║ ██║ ██║ ███████║█████╗ ██████╔╝██████╔╝██║ ██║ ██║██║ █████╔╝ +// ██╔══██║██║╚██╗██║██║ ██║ ██║ ██╔══██║██╔══╝ ██╔══██╗██╔══██╗██║ ██║ ██║██║ ██╔═██╗ +// ██║ ██║██║ ╚████║╚██████╔╝ ██║ ██║ ██║███████╗██║ ██║██████╔╝███████╗╚██████╔╝╚██████╗██║ ██╗ +// ╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝╚═════╝ ╚══════╝ ╚═════╝ ╚═════╝╚═╝ ╚═╝ +// + +/** + * @title ERC721ABLE + * @author anotherblock Technical Team + * @notice anotherblock ERC721 contract used for regular mint mechanism & limited edition + * + */ + +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +/* anotherblock Contract */ +import {ERC721AB} from "src/token/ERC721/ERC721AB.sol"; + +/* anotherblock Libraries */ +import {ABDataTypes} from "src/libraries/ABDataTypes.sol"; +import {ABErrors} from "src/libraries/ABErrors.sol"; + +contract ERC721ABLECoin is ERC721AB { + // _____ __ __ + // / ___// /_____ _/ /____ _____ + // \__ \/ __/ __ `/ __/ _ \/ ___/ + // ___/ / /_/ /_/ / /_/ __(__ ) + // /____/\__/\__,_/\__/\___/____/ + + /// @dev Supply cap for this collection + uint256 public maxSupply; + + /// @dev Price denominated in `mintCurrency` + uint256 public priceCurrency; + + /// @dev Token address accepted to mint NFTs + IERC20 public mintCurrency; + + /// @dev Implementation Type + bytes32 public constant IMPLEMENTATION_TYPE = keccak256("LIMITED_EDITION_COIN"); + + /// @dev ERC721AB implementation version + uint8 public constant IMPLEMENTATION_VERSION = 1; + + // ______ __ __ + // / ____/___ ____ _____/ /________ _______/ /_____ _____ + // / / / __ \/ __ \/ ___/ __/ ___/ / / / ___/ __/ __ \/ ___/ + // / /___/ /_/ / / / (__ ) /_/ / / /_/ / /__/ /_/ /_/ / / + // \____/\____/_/ /_/____/\__/_/ \__,_/\___/\__/\____/_/ + + /** + * @notice + * Contract Constructor + */ + /// @custom:oz-upgrades-unsafe-allow constructor + constructor() { + _disableInitializers(); + } + + // ______ __ __ ______ __ _ + // / ____/ __/ /____ _________ ____ _/ / / ____/_ ______ _____/ /_(_)___ ____ _____ + // / __/ | |/_/ __/ _ \/ ___/ __ \/ __ `/ / / /_ / / / / __ \/ ___/ __/ / __ \/ __ \/ ___/ + // / /____> maxSupply) { + revert ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE(); + } + + // Check if the current phase is private + if (!phase.isPublic) { + // Check that the user is included in the allowlist + if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { + revert ABErrors.NOT_ELIGIBLE(); + } + } + + // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase + if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); + + // Check that user is sending the correct amount of ETH (will revert if user send too much or not enough) + if (msg.value != phase.price * _quantity) revert ABErrors.INCORRECT_ETH_SENT(); + + // Set quantity minted for `_to` during the current phase + mintedPerPhase[_to][_phaseId] += _quantity; + + // Mint `_quantity` amount to `_to` address + _mint(_to, _quantity); + } + + // ____ __ ___ __ _ + // / __ \____ / /_ __ / | ____/ /___ ___ (_)___ + // / / / / __ \/ / / / / / /| |/ __ / __ `__ \/ / __ \ + // / /_/ / / / / / /_/ / / ___ / /_/ / / / / / / / / / / + // \____/_/ /_/_/\__, / /_/ |_\__,_/_/ /_/ /_/_/_/ /_/ + // /____/ + + /** + * @notice + * Initialize the Drop parameters + * Only the contract owner can perform this operation + * + * @param _maxSupply supply cap for this drop + * @param _sharePerToken percentage ownership of the full master right for one token (to be divided by 1e6) + * @param _mintGenesis amount of genesis tokens to be minted + * @param _genesisRecipient recipient address of genesis tokens + * @param _royaltyCurrency royalty currency contract address + * @param _mintCurrency mint currency contract address + * @param _baseUri base URI for this drop + */ + function initDrop( + uint256 _priceCurrency, + uint256 _maxSupply, + uint256 _sharePerToken, + uint256 _mintGenesis, + address _genesisRecipient, + address _royaltyCurrency, + address _mintCurrency, + string calldata _baseUri + ) external onlyOwner { + // Set the accepted payment token + mintCurrency = IERC20(_mintCurrency); + + // Set the price denominated in `mintCurrency` + priceCurrency = _priceCurrency; + + // Set supply cap + maxSupply = _maxSupply; + if (_mintGenesis > _maxSupply) revert ABErrors.INVALID_PARAMETER(); + + _initDrop(_sharePerToken, _mintGenesis, _genesisRecipient, _royaltyCurrency, _baseUri); + } + + /** + * @notice + * Set the maximum supply + * Only the contract owner can perform this operation + * + * @param _maxSupply new maximum supply to be set + */ + function setMaxSupply(uint256 _maxSupply) external onlyOwner { + if (_maxSupply < _totalMinted()) revert ABErrors.INVALID_PARAMETER(); + maxSupply = _maxSupply; + } +} From e3ef526d845c06099d3b7836b32db5454e6bfd94 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 31 Oct 2023 10:56:29 +0100 Subject: [PATCH 10/74] added mintCoin function --- forge-cache/solidity-files-cache.json | 60 +++++++++++++++++++++++++++ src/token/ERC721/ERC721ABLECoin.sol | 48 ++++++++++++++++++++- 2 files changed, 107 insertions(+), 1 deletion(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index e9d7f98..87e2aad 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -6193,6 +6193,66 @@ } } }, + "src/token/ERC721/ERC721ABLECoin.sol": { + "lastModificationDate": 1698746174403, + "contentHash": "61ebbf85d298124e1dedf379947f13a3", + "sourceName": "src/token/ERC721/ERC721ABLECoin.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", + "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/token/ERC721/ERC721AB.sol", + "src/utils/IABDataRegistry.sol", + "src/utils/IABVerifier.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "ERC721ABLECoin": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLECoin.sol/ERC721ABLECoin.json" + } + } + }, "src/token/ERC721/ERC721ABOE.sol": { "lastModificationDate": 1698654153570, "contentHash": "f31648078435acf839a046f667fd03c2", diff --git a/src/token/ERC721/ERC721ABLECoin.sol b/src/token/ERC721/ERC721ABLECoin.sol index e97a0be..3ea8e2b 100644 --- a/src/token/ERC721/ERC721ABLECoin.sol +++ b/src/token/ERC721/ERC721ABLECoin.sol @@ -35,6 +35,9 @@ // SPDX-License-Identifier: MIT pragma solidity ^0.8.18; +/* Openzeppelin Contract */ +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; + /* anotherblock Contract */ import {ERC721AB} from "src/token/ERC721/ERC721AB.sol"; @@ -94,7 +97,7 @@ contract ERC721ABLECoin is ERC721AB { * @param _quantity quantity of tokens requested (must be less than max mint per phase) * @param _signature signature to verify allowlist status */ - function mint(address _to, uint256 _phaseId, uint256 _quantity, bytes calldata _signature) external payable { + function mintETH(address _to, uint256 _phaseId, uint256 _quantity, bytes calldata _signature) external payable { // Check that the requested minting phase has started if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); @@ -127,6 +130,49 @@ contract ERC721ABLECoin is ERC721AB { _mint(_to, _quantity); } + /** + * @notice + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid + * + * @param _to token recipient address (must be whitelisted) + * @param _phaseId current minting phase (must be started) + * @param _quantity quantity of tokens requested (must be less than max mint per phase) + * @param _signature signature to verify allowlist status + */ + function mintCoin(address _to, uint256 _phaseId, uint256 _quantity, bytes calldata _signature) external { + // Check that the requested minting phase has started + if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); + + // Get requested phase details + ABDataTypes.Phase memory phase = phases[_phaseId]; + + // Check that there are enough tokens available for sale + if (_totalMinted() + _quantity > maxSupply) { + revert ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE(); + } + + // Check if the current phase is private + if (!phase.isPublic) { + // Check that the user is included in the allowlist + if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { + revert ABErrors.NOT_ELIGIBLE(); + } + } + + // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase + if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); + + if (!IERC20(mintCurrency).transferFrom(msg.sender, address(this), priceCurrency * _quantity)) { + revert ABErrors.INCORRECT_ETH_SENT(); + } + + // Set quantity minted for `_to` during the current phase + mintedPerPhase[_to][_phaseId] += _quantity; + + // Mint `_quantity` amount to `_to` address + _mint(_to, _quantity); + } + // ____ __ ___ __ _ // / __ \____ / /_ __ / | ____/ /___ ___ (_)___ // / / / / __ \/ / / / / / /| |/ __ / __ `__ \/ / __ \ From a645a465adf6012ef0f5321ca643891982dd5fdd Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Thu, 9 Nov 2023 10:35:04 +0100 Subject: [PATCH 11/74] added KYC Module --- src/factory/AnotherCloneFactory.sol | 20 ++- src/token/ERC721/ERC721AB.sol | 26 +++- src/token/ERC721/ERC721ABOE.sol | 7 +- src/utils/ABKYCModule.sol | 222 ++++++++++++++++++++++++++++ src/utils/IABKYCModule.sol | 122 +++++++++++++++ 5 files changed, 385 insertions(+), 12 deletions(-) create mode 100644 src/utils/ABKYCModule.sol create mode 100644 src/utils/IABKYCModule.sol diff --git a/src/factory/AnotherCloneFactory.sol b/src/factory/AnotherCloneFactory.sol index 3f14799..8743f3b 100644 --- a/src/factory/AnotherCloneFactory.sol +++ b/src/factory/AnotherCloneFactory.sol @@ -84,8 +84,11 @@ contract AnotherCloneFactory is AccessControlUpgradeable { /// @dev number of collection created by this factory uint256 public collectionCount; + /// @dev anotherblock KYC Module contract address + address public abKYCModule; + /// @dev Storage gap used for future upgrades (30 * 32 bytes) - uint256[30] __gap; + uint256[29] __gap; // ______ __ __ // / ____/___ ____ _____/ /________ _______/ /_____ _____ @@ -151,7 +154,7 @@ contract AnotherCloneFactory is AccessControlUpgradeable { ERC721AB newCollection = ERC721AB(Clones.cloneDeterministic(erc721Impl, _salt)); // Initialize NFT contract - newCollection.initialize(msg.sender, address(abDataRegistry), abVerifier, _name); + newCollection.initialize(msg.sender, address(abDataRegistry), abVerifier, abKYCModule, _name); // Setup collection _setupCollection(address(newCollection), msg.sender); @@ -204,7 +207,7 @@ contract AnotherCloneFactory is AccessControlUpgradeable { ERC721AB newCollection = ERC721AB(Clones.cloneDeterministic(_impl, _salt)); // Initialize NFT contract - newCollection.initialize(_publisher, address(abDataRegistry), abVerifier, _name); + newCollection.initialize(_publisher, address(abDataRegistry), abVerifier, abKYCModule, _name); // Setup collection _setupCollection(address(newCollection), _publisher); @@ -309,6 +312,17 @@ contract AnotherCloneFactory is AccessControlUpgradeable { royaltyImpl = _newImpl; } + /** + * @notice + * Set ABKYCModule contract address + * Only the caller with role `DEFAULT_ADMIN_ROLE` can perform this operation + * + * @param _abKYCModule address of the new implementation contract + */ + function setABKYCModule(address _abKYCModule) external onlyRole(DEFAULT_ADMIN_ROLE) { + abKYCModule = _abKYCModule; + } + // _ ___ ______ __ _ // | | / (_)__ _ __ / ____/_ ______ _____/ /_(_)___ ____ _____ // | | / / / _ \ | /| / / / /_ / / / / __ \/ ___/ __/ / __ \/ __ \/ ___/ diff --git a/src/token/ERC721/ERC721AB.sol b/src/token/ERC721/ERC721AB.sol index fb4568e..5235a71 100644 --- a/src/token/ERC721/ERC721AB.sol +++ b/src/token/ERC721/ERC721AB.sol @@ -50,6 +50,7 @@ import {ABEvents} from "src/libraries/ABEvents.sol"; /* anotherblock Interfaces */ import {IABVerifier} from "src/utils/IABVerifier.sol"; +import {IABKYCModule} from "src/utils/IABKYCModule.sol"; import {IABDataRegistry} from "src/utils/IABDataRegistry.sol"; abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { @@ -65,6 +66,9 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { /// @dev anotherblock Verifier contract interface (see IABVerifier.sol) IABVerifier public abVerifier; + /// @dev anotherblock KYC Module contract interface (see IABKYCModule.sol) + IABKYCModule public abKYCModule; + /// @dev Publisher address address public publisher; @@ -105,14 +109,17 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { * @param _publisher publisher address of this collection * @param _abDataRegistry ABDropRegistry contract address * @param _abVerifier ABVerifier contract address + * @param _abKYCModule ABKYCModule contract address * @param _name NFT collection name */ - function initialize(address _publisher, address _abDataRegistry, address _abVerifier, string memory _name) - external - initializerERC721A - initializer - { + function initialize( + address _publisher, + address _abDataRegistry, + address _abVerifier, + address _abKYCModule, + string memory _name + ) external initializerERC721A initializer { // Initialize ERC721A __ERC721A_init(_name, ""); @@ -128,6 +135,9 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { // Assign ABVerifier address abVerifier = IABVerifier(_abVerifier); + // Assign ABKYCModule address + abKYCModule = IABKYCModule(_abKYCModule); + // Assign the publisher address publisher = _publisher; } @@ -368,6 +378,12 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { _firstTokenId = 1; } + function _beforeMint(address _to, bytes calldata _signature) internal view { + if (abKYCModule.onMint(_to, _signature) == false) { + revert ABErrors.NO_KYC(); + } + } + function _beforeTokenTransfers(address _from, address _to, uint256, /* _startTokenId */ uint256 _quantity) internal override(ERC721AUpgradeable) diff --git a/src/token/ERC721/ERC721ABOE.sol b/src/token/ERC721/ERC721ABOE.sol index 1361879..0967aac 100644 --- a/src/token/ERC721/ERC721ABOE.sol +++ b/src/token/ERC721/ERC721ABOE.sol @@ -69,7 +69,7 @@ contract ERC721ABOE is ERC721AB { * @param _phaseId current minting phase (must be started) * @param _quantity quantity of tokens requested (must be less than max mint per phase) * @param _signature signature to verify allowlist status - * @param _signature signature to verify user's KYC status + * @param _kycSignature signature to verify user's KYC status */ function mint( address _to, @@ -78,11 +78,10 @@ contract ERC721ABOE is ERC721AB { bytes calldata _signature, bytes calldata _kycSignature ) external payable { - function mint(address _to, uint256 _phaseId, uint256 _quantity, bytes calldata _signature) external payable { // Check that the drop is initialized if (dropId == 0) revert ABErrors.DROP_NOT_INITIALIZED(); - - if (!abVerifier.verifySignatureKYC(_to, _kycSignature)) revert ABErrors.NO_KYC(); + + _beforeMint(_to, _kycSignature); // Check that the requested minting phase has started if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); diff --git a/src/utils/ABKYCModule.sol b/src/utils/ABKYCModule.sol new file mode 100644 index 0000000..6283c21 --- /dev/null +++ b/src/utils/ABKYCModule.sol @@ -0,0 +1,222 @@ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ██████████████████████████████████ +// ████████████████████████ ██████████ +// ████████████████████████ ██████████ +// ████████████████████████ ██████████ +// ████████████████████████ ██████████ +// ████████████████████ +// ████████████████████ +// ████████████████████ +// ████████████████████ +// +// +// █████╗ ███╗ ██╗ ██████╗ ████████╗██╗ ██╗███████╗██████╗ ██████╗ ██╗ ██████╗ ██████╗██╗ ██╗ +// ██╔══██╗████╗ ██║██╔═══██╗╚══██╔══╝██║ ██║██╔════╝██╔══██╗██╔══██╗██║ ██╔═══██╗██╔════╝██║ ██╔╝ +// ███████║██╔██╗ ██║██║ ██║ ██║ ███████║█████╗ ██████╔╝██████╔╝██║ ██║ ██║██║ █████╔╝ +// ██╔══██║██║╚██╗██║██║ ██║ ██║ ██╔══██║██╔══╝ ██╔══██╗██╔══██╗██║ ██║ ██║██║ ██╔═██╗ +// ██║ ██║██║ ╚████║╚██████╔╝ ██║ ██║ ██║███████╗██║ ██║██████╔╝███████╗╚██████╔╝╚██████╗██║ ██╗ +// ╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝╚═════╝ ╚══════╝ ╚═════╝ ╚═════╝╚═╝ ╚═╝ +// + +/** + * @title ABKYCModule + * @author anotherblock Technical Team + * @notice anotherblock contract responsible for verifying signature validity + * + */ + +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +/* Openzeppelin Contract */ +import {AccessControlUpgradeable} from "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol"; +import {ECDSA} from "@openzeppelin/contracts/utils/cryptography/ECDSA.sol"; + +/* anotherblock Library */ +import {ABErrors} from "src/libraries/ABErrors.sol"; + +/* anotherblock Interfaces */ +import {IABKYCModule} from "src/utils/IABKYCModule.sol"; + +contract ABKYCModule is IABKYCModule, AccessControlUpgradeable { + using ECDSA for bytes32; + + // _____ __ __ + // / ___// /_____ _/ /____ _____ + // \__ \/ __/ __ `/ __/ _ \/ ___/ + // ___/ / /_/ /_/ / /_/ __(__ ) + // /____/\__/\__,_/\__/\___/____/ + + /// @dev Default signer address + address public defaultSigner; + + /// @dev Mapping storing the signer address for a given collection + mapping(address collection => address signer) private signerPerCollection; + + /// @dev anotherblock Admin Role + bytes32 public constant AB_ADMIN_ROLE = keccak256("AB_ADMIN_ROLE"); + + /// @dev current Nonce used to invalidate KYC signature + uint256 currentNonce; + + /// @dev Storage gap used for future upgrades (30 * 32 bytes) + uint256[30] __gap; + + // ______ __ __ + // / ____/___ ____ _____/ /________ _______/ /_____ _____ + // / / / __ \/ __ \/ ___/ __/ ___/ / / / ___/ __/ __ \/ ___/ + // / /___/ /_/ / / / (__ ) /_/ / / /_/ / /__/ /_/ /_/ / / + // \____/\____/_/ /_/____/\__/_/ \__,_/\___/\__/\____/_/ + + /** + * @notice + * Contract Constructor + */ + /// @custom:oz-upgrades-unsafe-allow constructor + constructor() { + _disableInitializers(); + } + + /** + * @notice + * Contract Initializer + * + * @param _defaultSigner allowlist generator signer + * + */ + function initialize(address _defaultSigner) external initializer { + if (_defaultSigner == address(0)) revert ABErrors.INVALID_PARAMETER(); + defaultSigner = _defaultSigner; + + // Initialize Access Control + __AccessControl_init(); + _setupRole(DEFAULT_ADMIN_ROLE, msg.sender); + } + + // ______ __ __ ______ __ _ + // / ____/ __/ /____ _________ ____ _/ / / ____/_ ______ _____/ /_(_)___ ____ _____ + // / __/ | |/_/ __/ _ \/ ___/ __ \/ __ `/ / / /_ / / / / __ \/ ___/ __/ / __ \/ __ \/ ___/ + // / /____> Date: Thu, 9 Nov 2023 10:35:14 +0100 Subject: [PATCH 12/74] updated script & tests --- forge-cache/solidity-files-cache.json | 946 +++++++++++++++++- .../fireblocks/deploy-platform.s.sol | 2 +- .../goerli/fireblocks/deploy-platform.s.sol | 2 +- test/token/ERC721/ERC721ABLE.t.sol | 16 +- test/token/ERC721/ERC721ABOE.t.sol | 21 +- 5 files changed, 959 insertions(+), 28 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 969c372..3b1e2e7 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -4401,6 +4401,7 @@ "src/token/ERC1155/ERC1155AB.sol", "src/token/ERC721/ERC721AB.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -4586,6 +4587,7 @@ "src/token/ERC721/ERC721AB.sol", "src/token/ERC721/ERC721ABLE.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -4702,6 +4704,7 @@ "src/utils/ABDataRegistry.sol", "src/utils/ABVerifier.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -4805,7 +4808,7 @@ } }, "script/base/deploy-v1_1.s.sol": { - "lastModificationDate": 1699346432137, + "lastModificationDate": 1699431261098, "contentHash": "04063eb25d5f988bc0b2f3a60fb763b7", "sourceName": "script/base/deploy-v1_1.s.sol", "solcConfig": { @@ -4899,6 +4902,7 @@ "src/token/ERC721/ERC721ABOE.sol", "src/utils/ABDataRegistry.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -5000,6 +5004,7 @@ "src/token/ERC1155/ERC1155AB.sol", "src/token/ERC721/ERC721AB.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -5185,6 +5190,7 @@ "src/token/ERC721/ERC721AB.sol", "src/token/ERC721/ERC721ABLE.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -5195,7 +5201,7 @@ } }, "script/base-goerli/deploy-platform.s.sol": { - "lastModificationDate": 1699351517436, + "lastModificationDate": 1699431261098, "contentHash": "cbacf930a7cb4bf9d8fb6c6666a246aa", "sourceName": "script/base-goerli/deploy-platform.s.sol", "solcConfig": { @@ -5302,6 +5308,7 @@ "src/utils/ABDataRegistry.sol", "src/utils/ABVerifier.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -5405,7 +5412,7 @@ } }, "script/base-goerli/deploy-upgrade.s.sol": { - "lastModificationDate": 1699258935132, + "lastModificationDate": 1699431261098, "contentHash": "17ffe38bcdb1a46ab3332f5ba0577919", "sourceName": "script/base-goerli/deploy-upgrade.s.sol", "solcConfig": { @@ -5499,6 +5506,7 @@ "src/token/ERC721/ERC721ABOE.sol", "src/utils/ABDataRegistry.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -5508,6 +5516,796 @@ } } }, + "script/base-goerli/fireblocks/create-publisher.s.sol": { + "lastModificationDate": 1699431251722, + "contentHash": "e2267180499cb7133e1684156d386c07", + "sourceName": "script/base-goerli/fireblocks/create-publisher.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", + "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/factory/AnotherCloneFactory.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/token/ERC1155/ERC1155AB.sol", + "src/token/ERC721/ERC721AB.sol", + "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", + "src/utils/IABVerifier.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "CreatePublisher": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/create-publisher.s.sol/CreatePublisher.json" + } + } + }, + "script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol": { + "lastModificationDate": 1699431251723, + "contentHash": "39c6890b24873accfd9bc008fcfd019a", + "sourceName": "script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", + "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", + "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", + "test/_mocks/ABSuperToken.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployMockSuperToken": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" + } + } + }, + "script/base-goerli/fireblocks/deploy-platform.s.sol": { + "lastModificationDate": 1699451490833, + "contentHash": "b70d8c3e4c0e87035617d16c5b7ac0f5", + "sourceName": "script/base-goerli/fireblocks/deploy-platform.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", + "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/access/Ownable.sol", + "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", + "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", + "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/Context.sol", + "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/factory/AnotherCloneFactory.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/token/ERC1155/ERC1155AB.sol", + "src/token/ERC721/ERC721AB.sol", + "src/token/ERC721/ERC721ABLE.sol", + "src/utils/ABDataRegistry.sol", + "src/utils/ABVerifier.sol", + "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", + "src/utils/IABVerifier.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployPlatform": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/deploy-platform.s.sol/DeployPlatform.json" + } + } + }, + "script/base-goerli/fireblocks/deploy-royalty.s.sol": { + "lastModificationDate": 1699431251723, + "contentHash": "8f8077a3a079d877814bee151a073325", + "sourceName": "script/base-goerli/fireblocks/deploy-royalty.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", + "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/utils/ABDataRegistry.sol", + "src/utils/IABDataRegistry.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployRoyalty": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/deploy-royalty.s.sol/DeployRoyalty.json" + } + } + }, + "script/goerli/fireblocks/create-publisher.s.sol": { + "lastModificationDate": 1699431251724, + "contentHash": "e2267180499cb7133e1684156d386c07", + "sourceName": "script/goerli/fireblocks/create-publisher.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", + "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/factory/AnotherCloneFactory.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/token/ERC1155/ERC1155AB.sol", + "src/token/ERC721/ERC721AB.sol", + "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", + "src/utils/IABVerifier.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "CreatePublisher": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json" + } + } + }, + "script/goerli/fireblocks/deploy-ABSuperToken.s.sol": { + "lastModificationDate": 1699431251724, + "contentHash": "39c6890b24873accfd9bc008fcfd019a", + "sourceName": "script/goerli/fireblocks/deploy-ABSuperToken.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", + "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", + "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", + "test/_mocks/ABSuperToken.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployMockSuperToken": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" + } + } + }, + "script/goerli/fireblocks/deploy-platform.s.sol": { + "lastModificationDate": 1699451503169, + "contentHash": "f4b11546308bcfa921e15dd8e55ca1b8", + "sourceName": "script/goerli/fireblocks/deploy-platform.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", + "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/access/Ownable.sol", + "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", + "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", + "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/Context.sol", + "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/factory/AnotherCloneFactory.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/token/ERC1155/ERC1155AB.sol", + "src/token/ERC721/ERC721AB.sol", + "src/token/ERC721/ERC721ABLE.sol", + "src/utils/ABDataRegistry.sol", + "src/utils/ABVerifier.sol", + "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", + "src/utils/IABVerifier.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployPlatform": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json" + } + } + }, + "script/goerli/fireblocks/deploy-royalty.s.sol": { + "lastModificationDate": 1699431251724, + "contentHash": "8f8077a3a079d877814bee151a073325", + "sourceName": "script/goerli/fireblocks/deploy-royalty.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", + "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/utils/ABDataRegistry.sol", + "src/utils/IABDataRegistry.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployRoyalty": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json" + } + } + }, "script/op/deploy-ABSuperToken.s.sol": { "lastModificationDate": 1693465366217, "contentHash": "1d056aa991c6d5dfab2d1e455afd5113", @@ -5698,6 +6496,7 @@ "src/utils/ABDataRegistry.sol", "src/utils/ABVerifier.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -5801,8 +6600,8 @@ } }, "src/factory/AnotherCloneFactory.sol": { - "lastModificationDate": 1698932348920, - "contentHash": "b370aa7ef541079cc15fe35e58d87c2e", + "lastModificationDate": 1699451254067, + "contentHash": "e9fe9398131732f3a2451279154f6312", "sourceName": "src/factory/AnotherCloneFactory.sol", "solcConfig": { "settings": { @@ -5879,6 +6678,7 @@ "src/token/ERC1155/ERC1155AB.sol", "src/token/ERC721/ERC721AB.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -5930,8 +6730,8 @@ } }, "src/libraries/ABErrors.sol": { - "lastModificationDate": 1699259015359, - "contentHash": "a830557b02dcd7a590b70f262663f586", + "lastModificationDate": 1699431261099, + "contentHash": "0af5b5dd71207678278412b8cf947d07", "sourceName": "src/libraries/ABErrors.sol", "solcConfig": { "settings": { @@ -6180,8 +6980,8 @@ } }, "src/token/ERC721/ERC721AB.sol": { - "lastModificationDate": 1699349155791, - "contentHash": "17d03817fde02f2207eb384b9a9d4244", + "lastModificationDate": 1699518234969, + "contentHash": "4ffde64350ac7f3a42ff844623dcfd86", "sourceName": "src/token/ERC721/ERC721AB.sol", "solcConfig": { "settings": { @@ -6229,6 +7029,7 @@ "src/libraries/ABErrors.sol", "src/libraries/ABEvents.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -6299,8 +7100,8 @@ } }, "src/token/ERC721/ERC721ABOE.sol": { - "lastModificationDate": 1699349152220, - "contentHash": "2e939a79a96748e57db51583a275929f", + "lastModificationDate": 1699449928478, + "contentHash": "97d706981c383e12aa77459d97a2ddc1", "sourceName": "src/token/ERC721/ERC721ABOE.sol", "solcConfig": { "settings": { @@ -6349,6 +7150,7 @@ "src/libraries/ABEvents.sol", "src/token/ERC721/ERC721AB.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -6414,9 +7216,65 @@ } } }, + "src/utils/ABKYCModule.sol": { + "lastModificationDate": 1699451295166, + "contentHash": "248abc7994b798d200b36cc1ea265021", + "sourceName": "src/utils/ABKYCModule.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "src/libraries/ABErrors.sol", + "src/utils/IABKYCModule.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "ABKYCModule": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABKYCModule.sol/ABKYCModule.json" + } + } + }, "src/utils/ABVerifier.sol": { - "lastModificationDate": 1698654153571, - "contentHash": "65412e9bc6f0764bc78b283d2e1af36c", + "lastModificationDate": 1699438246263, + "contentHash": "4d08d742c574856408bc4714443bce67", "sourceName": "src/utils/ABVerifier.sol", "solcConfig": { "settings": { @@ -6511,9 +7369,50 @@ } } }, + "src/utils/IABKYCModule.sol": { + "lastModificationDate": 1699451408459, + "contentHash": "c57be769aa2c33fb48f47b5a0f4d41d5", + "sourceName": "src/utils/IABKYCModule.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [], + "versionRequirement": "^0.8.18", + "artifacts": { + "IABKYCModule": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "IABKYCModule.sol/IABKYCModule.json" + } + } + }, "src/utils/IABVerifier.sol": { - "lastModificationDate": 1698654153571, - "contentHash": "4fbc1efff48937c20859fb673ba4ff0a", + "lastModificationDate": 1699438246265, + "contentHash": "fd6c89ab4678e9b71919fa3b17964721", "sourceName": "src/utils/IABVerifier.sol", "solcConfig": { "settings": { @@ -7017,7 +7916,7 @@ } }, "test/factory/AnotherCloneFactory.t.sol": { - "lastModificationDate": 1698933866742, + "lastModificationDate": 1699431261100, "contentHash": "231bdc9a61da91b7c17310ca391a1f50", "sourceName": "test/factory/AnotherCloneFactory.t.sol", "solcConfig": { @@ -7129,6 +8028,7 @@ "src/utils/ABDataRegistry.sol", "src/utils/ABVerifier.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol", "test/_testdata/AnotherCloneFactory.td.sol" ], @@ -7266,6 +8166,7 @@ "src/utils/ABDataRegistry.sol", "src/utils/ABVerifier.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol", "test/_mocks/ABSuperToken.sol", "test/_testdata/ABRoyalty.td.sol" @@ -7411,6 +8312,7 @@ "src/utils/ABDataRegistry.sol", "src/utils/ABVerifier.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol", "test/_mocks/ABSuperToken.sol", "test/_mocks/MockToken.sol", @@ -7424,8 +8326,8 @@ } }, "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1698045674548, - "contentHash": "c3871a4701ce436512f1844c328b512f", + "lastModificationDate": 1699454778161, + "contentHash": "ee7c8ca7149cff81a8f3d9b862bc5c17", "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", "solcConfig": { "settings": { @@ -7550,8 +8452,10 @@ "src/token/ERC721/ERC721AB.sol", "src/token/ERC721/ERC721ABLE.sol", "src/utils/ABDataRegistry.sol", + "src/utils/ABKYCModule.sol", "src/utils/ABVerifier.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol", "test/_mocks/ABSuperToken.sol", "test/_mocks/MockToken.sol", @@ -7565,8 +8469,8 @@ } }, "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1699258924774, - "contentHash": "a7b541a46d9274042a34a4f4a02dbbde", + "lastModificationDate": 1699518205770, + "contentHash": "84dd908be562c8a40fc1e7d25d807fce", "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", "solcConfig": { "settings": { @@ -7691,8 +8595,10 @@ "src/token/ERC721/ERC721AB.sol", "src/token/ERC721/ERC721ABOE.sol", "src/utils/ABDataRegistry.sol", + "src/utils/ABKYCModule.sol", "src/utils/ABVerifier.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol", "test/_mocks/ABSuperToken.sol", "test/_mocks/MockToken.sol", diff --git a/script/base-goerli/fireblocks/deploy-platform.s.sol b/script/base-goerli/fireblocks/deploy-platform.s.sol index 8468835..4668edf 100644 --- a/script/base-goerli/fireblocks/deploy-platform.s.sol +++ b/script/base-goerli/fireblocks/deploy-platform.s.sol @@ -101,7 +101,7 @@ contract DeployPlatform is Script { keccak256("AB_ADMIN_ROLE"), 0xD71256eC24925873cE9E9F085f89864Ca05970bD ); - ABVerifier(address(abVerifierProxy)).setKycSigner(0xD71256eC24925873cE9E9F085f89864Ca05970bD); + ABVerifier(address(abVerifierProxy)).setDefaultSigner(0xD71256eC24925873cE9E9F085f89864Ca05970bD); vm.stopBroadcast(); } diff --git a/script/goerli/fireblocks/deploy-platform.s.sol b/script/goerli/fireblocks/deploy-platform.s.sol index 8ff0dd4..4017ba3 100644 --- a/script/goerli/fireblocks/deploy-platform.s.sol +++ b/script/goerli/fireblocks/deploy-platform.s.sol @@ -99,7 +99,7 @@ contract DeployPlatform is Script { keccak256("AB_ADMIN_ROLE"), 0xD71256eC24925873cE9E9F085f89864Ca05970bD ); - ABVerifier(address(abVerifierProxy)).setKycSigner(0xD71256eC24925873cE9E9F085f89864Ca05970bD); + ABVerifier(address(abVerifierProxy)).setDefaultSigner(0xD71256eC24925873cE9E9F085f89864Ca05970bD); vm.stopBroadcast(); } diff --git a/test/token/ERC721/ERC721ABLE.t.sol b/test/token/ERC721/ERC721ABLE.t.sol index e6df19d..751d397 100644 --- a/test/token/ERC721/ERC721ABLE.t.sol +++ b/test/token/ERC721/ERC721ABLE.t.sol @@ -8,6 +8,7 @@ import {ERC1155AB} from "src/token/ERC1155/ERC1155AB.sol"; import {ABDataRegistry} from "src/utils/ABDataRegistry.sol"; import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; import {ABVerifier} from "src/utils/ABVerifier.sol"; +import {ABKYCModule} from "src/utils/ABKYCModule.sol"; import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; import {ABDataTypes} from "src/libraries/ABDataTypes.sol"; import {ABErrors} from "src/libraries/ABErrors.sol"; @@ -44,6 +45,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { MockToken public mockToken; ABDataRegistry public abDataRegistry; AnotherCloneFactory public anotherCloneFactory; + ABKYCModule public abKYCModule; ABRoyalty public royaltyImpl; ERC721ABLE public erc721Impl; ERC1155AB public erc1155Impl; @@ -51,6 +53,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { TransparentUpgradeableProxy public anotherCloneFactoryProxy; TransparentUpgradeableProxy public abDataRegistryProxy; TransparentUpgradeableProxy public abVerifierProxy; + TransparentUpgradeableProxy public abKYCModuleProxy; ERC721ABLE public nft; @@ -106,6 +109,14 @@ contract ERC721ABTest is Test, ERC721ABTestData { abVerifier = ABVerifier(address(abVerifierProxy)); vm.label(address(abVerifier), "abVerifier"); + abKYCModuleProxy = new TransparentUpgradeableProxy( + address(new ABKYCModule()), + address(proxyAdmin), + abi.encodeWithSelector(ABVerifier.initialize.selector, abSigner) + ); + abKYCModule = ABKYCModule(address(abKYCModuleProxy)); + vm.label(address(abVerifier), "abVerifier"); + erc1155Impl = new ERC1155AB(); vm.label(address(erc1155Impl), "erc1155Impl"); @@ -146,6 +157,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { /* Init contracts params */ abDataRegistry.grantRole(keccak256("FACTORY_ROLE"), address(anotherCloneFactory)); + anotherCloneFactory.setABKYCModule(address(abKYCModule)); anotherCloneFactory.createPublisherProfile(publisher, PUBLISHER_FEE); vm.prank(publisher); @@ -164,7 +176,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { ); nft = ERC721ABLE(address(erc721proxy)); - nft.initialize(publisher, address(abDataRegistry), address(abVerifier), NAME); + nft.initialize(publisher, address(abDataRegistry), address(abVerifier), address(abKYCModule), NAME); assertEq(address(nft.abDataRegistry()), address(abDataRegistry)); assertEq(address(nft.abVerifier()), address(abVerifier)); @@ -173,7 +185,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { function test_initialize_alreadyInitialized() public { vm.expectRevert("ERC721A__Initializable: contract is already initialized"); - nft.initialize(address(this), address(abDataRegistry), address(abVerifier), NAME); + nft.initialize(address(this), address(abDataRegistry), address(abVerifier), address(abKYCModule), NAME); } function test_initDrop_owner() public { diff --git a/test/token/ERC721/ERC721ABOE.t.sol b/test/token/ERC721/ERC721ABOE.t.sol index e1f04f8..3ede68d 100644 --- a/test/token/ERC721/ERC721ABOE.t.sol +++ b/test/token/ERC721/ERC721ABOE.t.sol @@ -8,6 +8,7 @@ import {ERC1155AB} from "src/token/ERC1155/ERC1155AB.sol"; import {ABDataRegistry} from "src/utils/ABDataRegistry.sol"; import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; import {ABVerifier} from "src/utils/ABVerifier.sol"; +import {ABKYCModule} from "src/utils/ABKYCModule.sol"; import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; import {ABDataTypes} from "src/libraries/ABDataTypes.sol"; import {ABErrors} from "src/libraries/ABErrors.sol"; @@ -26,8 +27,8 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { /* Admin */ uint256 public abSignerPkey = 69; - uint256 public kycSignerPkey = 420; address public abSigner; + uint256 public kycSignerPkey = 420; address public kycSigner; address public genesisRecipient; address payable public treasury; @@ -43,6 +44,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { MockToken public mockToken; ABDataRegistry public abDataRegistry; AnotherCloneFactory public anotherCloneFactory; + ABKYCModule public abKYCModule; ABRoyalty public royaltyImpl; ERC721ABOE public erc721Impl; ERC721ABOE public erc721OEImpl; @@ -51,6 +53,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { TransparentUpgradeableProxy public anotherCloneFactoryProxy; TransparentUpgradeableProxy public abDataRegistryProxy; TransparentUpgradeableProxy public abVerifierProxy; + TransparentUpgradeableProxy public abKYCModuleProxy; ERC721ABOE public nft; @@ -101,6 +104,14 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { abVerifier = ABVerifier(address(abVerifierProxy)); vm.label(address(abVerifier), "abVerifier"); + abKYCModuleProxy = new TransparentUpgradeableProxy( + address(new ABKYCModule()), + address(proxyAdmin), + abi.encodeWithSelector(ABVerifier.initialize.selector, abSigner) + ); + abKYCModule = ABKYCModule(address(abKYCModuleProxy)); + vm.label(address(abVerifier), "abVerifier"); + erc1155Impl = new ERC1155AB(); vm.label(address(erc1155Impl), "erc1155Impl"); @@ -138,7 +149,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { vm.label(address(anotherCloneFactory), "anotherCloneFactory"); - abVerifier.setKycSigner(kycSigner); + abVerifier.setDefaultSigner(abSigner); /* Setup Access Control Roles */ anotherCloneFactory.grantRole(AB_ADMIN_ROLE_HASH, address(this)); @@ -146,6 +157,8 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { /* Init contracts params */ abDataRegistry.grantRole(keccak256("FACTORY_ROLE"), address(anotherCloneFactory)); + anotherCloneFactory.setABKYCModule(address(abKYCModule)); + anotherCloneFactory.createPublisherProfile(publisher, PUBLISHER_FEE); anotherCloneFactory.createCollection721FromImplementation(address(erc721OEImpl), publisher, NAME, SALT); @@ -163,7 +176,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { ); nft = ERC721ABOE(address(erc721proxy)); - nft.initialize(publisher, address(abDataRegistry), address(abVerifier), NAME); + nft.initialize(publisher, address(abDataRegistry), address(abVerifier), address(abKYCModule), NAME); assertEq(address(nft.abDataRegistry()), address(abDataRegistry)); assertEq(address(nft.abVerifier()), address(abVerifier)); @@ -172,7 +185,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { function test_initialize_alreadyInitialized() public { vm.expectRevert("ERC721A__Initializable: contract is already initialized"); - nft.initialize(address(this), address(abDataRegistry), address(abVerifier), NAME); + nft.initialize(address(this), address(abDataRegistry), address(abVerifier), address(abKYCModule), NAME); } function test_initDrop_owner() public { From 589c17fa2c57dfb20744fa14ab46b12b41dbb0da Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 21 Nov 2023 15:22:02 +0100 Subject: [PATCH 13/74] updated KYC module --- src/token/ERC721/ERC721AB.sol | 6 ++---- src/utils/ABKYCModule.sol | 14 ++++---------- src/utils/IABKYCModule.sol | 12 +++--------- 3 files changed, 9 insertions(+), 23 deletions(-) diff --git a/src/token/ERC721/ERC721AB.sol b/src/token/ERC721/ERC721AB.sol index 5235a71..1dbbd2f 100644 --- a/src/token/ERC721/ERC721AB.sol +++ b/src/token/ERC721/ERC721AB.sol @@ -378,10 +378,8 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { _firstTokenId = 1; } - function _beforeMint(address _to, bytes calldata _signature) internal view { - if (abKYCModule.onMint(_to, _signature) == false) { - revert ABErrors.NO_KYC(); - } + function _beforeMint(address _to, bytes calldata _signature) internal { + abKYCModule.onMint(_to, _signature); } function _beforeTokenTransfers(address _from, address _to, uint256, /* _startTokenId */ uint256 _quantity) diff --git a/src/utils/ABKYCModule.sol b/src/utils/ABKYCModule.sol index 6283c21..5c433f8 100644 --- a/src/utils/ABKYCModule.sol +++ b/src/utils/ABKYCModule.sol @@ -112,14 +112,12 @@ contract ABKYCModule is IABKYCModule, AccessControlUpgradeable { * * @param _user user address * @param _signature signature generated by AB Backend and signed by AB KYC Signer - * - * @return _isValid boolean corresponding to the user's KYC approval */ - function onMint(address _user, bytes calldata _signature) external view returns (bool _isValid) { + function onMint(address _user, bytes calldata _signature) external view { bytes32 digest = keccak256( abi.encodePacked("\x19Ethereum Signed Message:\n32", keccak256(abi.encodePacked(_user, currentNonce))) ); - _isValid = defaultSigner == digest.recover(_signature); + if (digest.recover(_signature) != defaultSigner) revert ABErrors.NO_KYC(); } /** @@ -127,10 +125,8 @@ contract ABKYCModule is IABKYCModule, AccessControlUpgradeable { * Return true if the user is KYC'd, false otherwise * * @param _to user address - * - * @return _isValid boolean corresponding to the user's KYC approval */ - function onTransfer(address _to) external view returns (bool _isValid) {} + function onTransfer(address _to) external view {} /** * @notice @@ -138,10 +134,8 @@ contract ABKYCModule is IABKYCModule, AccessControlUpgradeable { * * @param _user user address * @param _signature signature generated by AB Backend and signed by AB KYC Signer - * - * @return _isValid boolean corresponding to the user's KYC approval */ - function onRoyaltyClaim(address _user, bytes calldata _signature) external view returns (bool _isValid) {} + function onRoyaltyClaim(address _user, bytes calldata _signature) external view {} // ____ __ ___ __ _ // / __ \____ / /_ __ / | ____/ /___ ___ (_)___ diff --git a/src/utils/IABKYCModule.sol b/src/utils/IABKYCModule.sol index ad096b6..011757f 100644 --- a/src/utils/IABKYCModule.sol +++ b/src/utils/IABKYCModule.sol @@ -48,20 +48,16 @@ interface IABKYCModule { * * @param _user user address * @param _signature signature generated by AB Backend and signed by AB KYC Signer - * - * @return _isValid boolean corresponding to the user's KYC approval */ - function onMint(address _user, bytes calldata _signature) external view returns (bool _isValid); + function onMint(address _user, bytes calldata _signature) external; /** * @notice * Return true if the user is KYC'd, false otherwise * * @param _to user address - * - * @return _isValid boolean corresponding to the user's KYC approval */ - function onTransfer(address _to) external view returns (bool _isValid); + function onTransfer(address _to) external; /** * @notice @@ -69,10 +65,8 @@ interface IABKYCModule { * * @param _user user address * @param _signature signature generated by AB Backend and signed by AB KYC Signer - * - * @return _isValid boolean corresponding to the user's KYC approval */ - function onRoyaltyClaim(address _user, bytes calldata _signature) external view returns (bool _isValid); + function onRoyaltyClaim(address _user, bytes calldata _signature) external; // ____ __ ___ __ _ // / __ \____ / /_ __ / | ____/ /___ ___ (_)___ From f54da4e1b497307120243bcb84693e016f72ed0e Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 21 Nov 2023 15:22:24 +0100 Subject: [PATCH 14/74] format --- src/factory/AnotherCloneFactory.sol | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/factory/AnotherCloneFactory.sol b/src/factory/AnotherCloneFactory.sol index 8743f3b..7cfa4c5 100644 --- a/src/factory/AnotherCloneFactory.sol +++ b/src/factory/AnotherCloneFactory.sol @@ -85,7 +85,7 @@ contract AnotherCloneFactory is AccessControlUpgradeable { uint256 public collectionCount; /// @dev anotherblock KYC Module contract address - address public abKYCModule; + address public abKycModule; /// @dev Storage gap used for future upgrades (30 * 32 bytes) uint256[29] __gap; @@ -154,7 +154,7 @@ contract AnotherCloneFactory is AccessControlUpgradeable { ERC721AB newCollection = ERC721AB(Clones.cloneDeterministic(erc721Impl, _salt)); // Initialize NFT contract - newCollection.initialize(msg.sender, address(abDataRegistry), abVerifier, abKYCModule, _name); + newCollection.initialize(msg.sender, address(abDataRegistry), abVerifier, abKycModule, _name); // Setup collection _setupCollection(address(newCollection), msg.sender); @@ -207,7 +207,7 @@ contract AnotherCloneFactory is AccessControlUpgradeable { ERC721AB newCollection = ERC721AB(Clones.cloneDeterministic(_impl, _salt)); // Initialize NFT contract - newCollection.initialize(_publisher, address(abDataRegistry), abVerifier, abKYCModule, _name); + newCollection.initialize(_publisher, address(abDataRegistry), abVerifier, abKycModule, _name); // Setup collection _setupCollection(address(newCollection), _publisher); @@ -320,7 +320,7 @@ contract AnotherCloneFactory is AccessControlUpgradeable { * @param _abKYCModule address of the new implementation contract */ function setABKYCModule(address _abKYCModule) external onlyRole(DEFAULT_ADMIN_ROLE) { - abKYCModule = _abKYCModule; + abKycModule = _abKYCModule; } // _ ___ ______ __ _ From 6a1a931c546f233402cbeaf6d45816d5f04f7593 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 21 Nov 2023 15:22:33 +0100 Subject: [PATCH 15/74] comment --- src/token/ERC721/ERC721ABOE.sol | 1 + 1 file changed, 1 insertion(+) diff --git a/src/token/ERC721/ERC721ABOE.sol b/src/token/ERC721/ERC721ABOE.sol index 0967aac..f03a1df 100644 --- a/src/token/ERC721/ERC721ABOE.sol +++ b/src/token/ERC721/ERC721ABOE.sol @@ -81,6 +81,7 @@ contract ERC721ABOE is ERC721AB { // Check that the drop is initialized if (dropId == 0) revert ABErrors.DROP_NOT_INITIALIZED(); + // Perform before mint checks (KYC verification) _beforeMint(_to, _kycSignature); // Check that the requested minting phase has started From dbd4b740d40af511394917b1827444303c13b1a0 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 21 Nov 2023 15:22:45 +0100 Subject: [PATCH 16/74] integrate KYC module check --- src/token/ERC721/ERC721ABLE.sol | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/token/ERC721/ERC721ABLE.sol b/src/token/ERC721/ERC721ABLE.sol index 80fbb42..875efeb 100644 --- a/src/token/ERC721/ERC721ABLE.sol +++ b/src/token/ERC721/ERC721ABLE.sol @@ -72,8 +72,18 @@ contract ERC721ABLE is ERC721AB { * @param _phaseId current minting phase (must be started) * @param _quantity quantity of tokens requested (must be less than max mint per phase) * @param _signature signature to verify allowlist status + * @param _kycSignature signature to verify user's KYC status */ - function mint(address _to, uint256 _phaseId, uint256 _quantity, bytes calldata _signature) external payable { + function mint( + address _to, + uint256 _phaseId, + uint256 _quantity, + bytes calldata _signature, + bytes calldata _kycSignature + ) external payable { + // Perform before mint checks (KYC verification) + _beforeMint(_to, _kycSignature); + // Check that the requested minting phase has started if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); From 22d456baeaba41a95eebba28d8447b0af5f5cf8d Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 21 Nov 2023 15:23:04 +0100 Subject: [PATCH 17/74] updated tests (KYC module) --- forge-cache/solidity-files-cache.json | 61 ++++++++++++++------------- test/token/ERC721/ERC721ABLE.t.sol | 52 ++++++++++++++++------- test/token/ERC721/ERC721ABOE.t.sol | 5 +-- 3 files changed, 70 insertions(+), 48 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 3b1e2e7..11bac45 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -4495,7 +4495,7 @@ } }, "script/base/deploy-implementations.s.sol": { - "lastModificationDate": 1698045674541, + "lastModificationDate": 1699523979381, "contentHash": "7b91a7e4dd208eed116e3d6df13ec06b", "sourceName": "script/base/deploy-implementations.s.sol", "solcConfig": { @@ -4598,7 +4598,7 @@ } }, "script/base/deploy-platform.s.sol": { - "lastModificationDate": 1698045674542, + "lastModificationDate": 1699523979381, "contentHash": "b249659654ea2b392c4629c74cc3f49e", "sourceName": "script/base/deploy-platform.s.sol", "solcConfig": { @@ -4808,7 +4808,7 @@ } }, "script/base/deploy-v1_1.s.sol": { - "lastModificationDate": 1699431261098, + "lastModificationDate": 1700049426046, "contentHash": "04063eb25d5f988bc0b2f3a60fb763b7", "sourceName": "script/base/deploy-v1_1.s.sol", "solcConfig": { @@ -5098,7 +5098,7 @@ } }, "script/base-goerli/deploy-implementations.s.sol": { - "lastModificationDate": 1698045674541, + "lastModificationDate": 1699523979380, "contentHash": "05dbd9c58bd38f549b31bb572d64d339", "sourceName": "script/base-goerli/deploy-implementations.s.sol", "solcConfig": { @@ -5201,7 +5201,7 @@ } }, "script/base-goerli/deploy-platform.s.sol": { - "lastModificationDate": 1699431261098, + "lastModificationDate": 1700049426046, "contentHash": "cbacf930a7cb4bf9d8fb6c6666a246aa", "sourceName": "script/base-goerli/deploy-platform.s.sol", "solcConfig": { @@ -5412,7 +5412,7 @@ } }, "script/base-goerli/deploy-upgrade.s.sol": { - "lastModificationDate": 1699431261098, + "lastModificationDate": 1700049426046, "contentHash": "17ffe38bcdb1a46ab3332f5ba0577919", "sourceName": "script/base-goerli/deploy-upgrade.s.sol", "solcConfig": { @@ -5517,7 +5517,7 @@ } }, "script/base-goerli/fireblocks/create-publisher.s.sol": { - "lastModificationDate": 1699431251722, + "lastModificationDate": 1700559566834, "contentHash": "e2267180499cb7133e1684156d386c07", "sourceName": "script/base-goerli/fireblocks/create-publisher.s.sol", "solcConfig": { @@ -5702,7 +5702,7 @@ } }, "script/base-goerli/fireblocks/deploy-platform.s.sol": { - "lastModificationDate": 1699451490833, + "lastModificationDate": 1700559566835, "contentHash": "b70d8c3e4c0e87035617d16c5b7ac0f5", "sourceName": "script/base-goerli/fireblocks/deploy-platform.s.sol", "solcConfig": { @@ -5912,7 +5912,7 @@ } }, "script/goerli/fireblocks/create-publisher.s.sol": { - "lastModificationDate": 1699431251724, + "lastModificationDate": 1700559566835, "contentHash": "e2267180499cb7133e1684156d386c07", "sourceName": "script/goerli/fireblocks/create-publisher.s.sol", "solcConfig": { @@ -6097,7 +6097,7 @@ } }, "script/goerli/fireblocks/deploy-platform.s.sol": { - "lastModificationDate": 1699451503169, + "lastModificationDate": 1700559566836, "contentHash": "f4b11546308bcfa921e15dd8e55ca1b8", "sourceName": "script/goerli/fireblocks/deploy-platform.s.sol", "solcConfig": { @@ -6390,7 +6390,7 @@ } }, "script/op/deploy-platform.s.sol": { - "lastModificationDate": 1698045674543, + "lastModificationDate": 1699523979382, "contentHash": "bd1558a2a1b08abdadcab46e1dc68d55", "sourceName": "script/op/deploy-platform.s.sol", "solcConfig": { @@ -6600,8 +6600,8 @@ } }, "src/factory/AnotherCloneFactory.sol": { - "lastModificationDate": 1699451254067, - "contentHash": "e9fe9398131732f3a2451279154f6312", + "lastModificationDate": 1700573976409, + "contentHash": "53ca5821f7b41a3b57394f7334ab6062", "sourceName": "src/factory/AnotherCloneFactory.sol", "solcConfig": { "settings": { @@ -6980,8 +6980,8 @@ } }, "src/token/ERC721/ERC721AB.sol": { - "lastModificationDate": 1699518234969, - "contentHash": "4ffde64350ac7f3a42ff844623dcfd86", + "lastModificationDate": 1700574958504, + "contentHash": "5317b28432068c6e7dd756d49835a21a", "sourceName": "src/token/ERC721/ERC721AB.sol", "solcConfig": { "settings": { @@ -7040,8 +7040,8 @@ } }, "src/token/ERC721/ERC721ABLE.sol": { - "lastModificationDate": 1699349138016, - "contentHash": "8a218f9e4a907b72e13264a421178cad", + "lastModificationDate": 1700574280010, + "contentHash": "d78a8951ac3a3aec7c3973448ae3830c", "sourceName": "src/token/ERC721/ERC721ABLE.sol", "solcConfig": { "settings": { @@ -7090,6 +7090,7 @@ "src/libraries/ABEvents.sol", "src/token/ERC721/ERC721AB.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -7100,8 +7101,8 @@ } }, "src/token/ERC721/ERC721ABOE.sol": { - "lastModificationDate": 1699449928478, - "contentHash": "97d706981c383e12aa77459d97a2ddc1", + "lastModificationDate": 1700574414122, + "contentHash": "0480f19286620b20db9164bb5dc0f037", "sourceName": "src/token/ERC721/ERC721ABOE.sol", "solcConfig": { "settings": { @@ -7217,8 +7218,8 @@ } }, "src/utils/ABKYCModule.sol": { - "lastModificationDate": 1699451295166, - "contentHash": "248abc7994b798d200b36cc1ea265021", + "lastModificationDate": 1700576129054, + "contentHash": "42ab43aa33741ee2149bb73cd961ffcf", "sourceName": "src/utils/ABKYCModule.sol", "solcConfig": { "settings": { @@ -7370,8 +7371,8 @@ } }, "src/utils/IABKYCModule.sol": { - "lastModificationDate": 1699451408459, - "contentHash": "c57be769aa2c33fb48f47b5a0f4d41d5", + "lastModificationDate": 1700574936548, + "contentHash": "bdc49262abd7578e36a56b810e2c3317", "sourceName": "src/utils/IABKYCModule.sol", "solcConfig": { "settings": { @@ -7916,7 +7917,7 @@ } }, "test/factory/AnotherCloneFactory.t.sol": { - "lastModificationDate": 1699431261100, + "lastModificationDate": 1700049426048, "contentHash": "231bdc9a61da91b7c17310ca391a1f50", "sourceName": "test/factory/AnotherCloneFactory.t.sol", "solcConfig": { @@ -8040,7 +8041,7 @@ } }, "test/royalty/ABRoyalty.t.sol": { - "lastModificationDate": 1698045674547, + "lastModificationDate": 1699523979386, "contentHash": "1709c4b58e65fec2eb5d4f2a98d2dab4", "sourceName": "test/royalty/ABRoyalty.t.sol", "solcConfig": { @@ -8179,7 +8180,7 @@ } }, "test/token/ERC1155/ERC1155AB.t.sol": { - "lastModificationDate": 1698045674548, + "lastModificationDate": 1699523979386, "contentHash": "7e601132d94c61b0b8aea76a591768ba", "sourceName": "test/token/ERC1155/ERC1155AB.t.sol", "solcConfig": { @@ -8326,8 +8327,8 @@ } }, "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1699454778161, - "contentHash": "ee7c8ca7149cff81a8f3d9b862bc5c17", + "lastModificationDate": 1700576428402, + "contentHash": "b63835fd428e30d426241b40af0fa20a", "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", "solcConfig": { "settings": { @@ -8469,8 +8470,8 @@ } }, "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1699518205770, - "contentHash": "84dd908be562c8a40fc1e7d25d807fce", + "lastModificationDate": 1700576280636, + "contentHash": "d3e6cf7efdc73aa30d1b24a4e7312dcf", "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", "solcConfig": { "settings": { diff --git a/test/token/ERC721/ERC721ABLE.t.sol b/test/token/ERC721/ERC721ABLE.t.sol index 751d397..e9bb1a4 100644 --- a/test/token/ERC721/ERC721ABLE.t.sol +++ b/test/token/ERC721/ERC721ABLE.t.sol @@ -29,6 +29,8 @@ contract ERC721ABTest is Test, ERC721ABTestData { /* Admin */ uint256 public abSignerPkey = 69; address public abSigner; + uint256 public kycSignerPkey = 420; + address public kycSigner; address public genesisRecipient; address payable public treasury; @@ -67,6 +69,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { /* Setup admins */ abSigner = vm.addr(abSignerPkey); + kycSigner = vm.addr(kycSignerPkey); genesisRecipient = vm.addr(100); /* Setup users */ @@ -112,10 +115,10 @@ contract ERC721ABTest is Test, ERC721ABTestData { abKYCModuleProxy = new TransparentUpgradeableProxy( address(new ABKYCModule()), address(proxyAdmin), - abi.encodeWithSelector(ABVerifier.initialize.selector, abSigner) + abi.encodeWithSelector(ABVerifier.initialize.selector, kycSigner) ); abKYCModule = ABKYCModule(address(abKYCModuleProxy)); - vm.label(address(abVerifier), "abVerifier"); + vm.label(address(abKYCModule), "abKYCModule"); erc1155Impl = new ERC1155AB(); vm.label(address(erc1155Impl), "erc1155Impl"); @@ -500,10 +503,11 @@ contract ERC721ABTest is Test, ERC721ABTestData { // Create signature for `alice` dropId 0 and phaseId 0 bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); // Impersonate `alice` vm.prank(alice); - nft.mint{value: PRICE}(alice, PHASE_ID_0, 1, signature); + nft.mint{value: PRICE}(alice, PHASE_ID_0, 1, signature, kycSignature); assertEq(nft.balanceOf(alice), 1); } @@ -525,15 +529,17 @@ contract ERC721ABTest is Test, ERC721ABTestData { // Create signature for `alice` dropId 0 and phaseId 0 bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); vm.prank(alice); - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature); + nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); + kycSignature = _generateKycSignature(bob, 0); vm.prank(bob); vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - nft.mint{value: PRICE}(bob, PHASE_ID_0, 1, signature); + nft.mint{value: PRICE}(bob, PHASE_ID_0, 1, signature, kycSignature); } function test_mint_notEnoughTokenAvailable() public { @@ -554,16 +560,18 @@ contract ERC721ABTest is Test, ERC721ABTestData { // Create signature for `alice` dropId 0 and phaseId 0 bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); vm.prank(alice); - nft.mint{value: PRICE * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature); + nft.mint{value: PRICE * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); uint256 bobMintQty = 2; - signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); + kycSignature = _generateKycSignature(bob, 0); vm.prank(bob); vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - nft.mint{value: PRICE * bobMintQty}(bob, PHASE_ID_0, bobMintQty, signature); + nft.mint{value: PRICE * bobMintQty}(bob, PHASE_ID_0, bobMintQty, signature, kycSignature); } function test_mint_noPhaseSet() public { @@ -574,10 +582,11 @@ contract ERC721ABTest is Test, ERC721ABTestData { // Create signature for `alice` dropId 0 and phaseId 0 bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); vm.prank(alice); vm.expectRevert(); - nft.mint{value: PRICE * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature); + nft.mint{value: PRICE * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); } function test_mint_incorrectETHSent() public { @@ -597,6 +606,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { // Create signature for `alice` dropId 0 and phaseId 0 bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); // Impersonate `alice` vm.startPrank(alice); @@ -607,10 +617,10 @@ contract ERC721ABTest is Test, ERC721ABTestData { uint256 tooLowPrice = PRICE * (mintQty - 1); vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); - nft.mint{value: tooHighPrice}(alice, PHASE_ID_0, mintQty, signature); + nft.mint{value: tooHighPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); - nft.mint{value: tooLowPrice}(alice, PHASE_ID_0, mintQty, signature); + nft.mint{value: tooLowPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); } @@ -632,6 +642,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { // Create signature for `alice` dropId 0 and phaseId 0 bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); // Impersonate `alice` vm.startPrank(alice); @@ -639,7 +650,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { uint256 mintQty = P0_MAX_MINT + 1; vm.expectRevert(ABErrors.MAX_MINT_PER_ADDRESS.selector); - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature); + nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); } @@ -661,6 +672,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { // Create signature for `alice` dropId 0 and phaseId 0 bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); // Impersonate `alice` vm.startPrank(alice); @@ -668,7 +680,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { uint256 mintQty = 4; vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature); + nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); } @@ -694,9 +706,10 @@ contract ERC721ABTest is Test, ERC721ABTestData { uint256 mintQty = 4; bytes memory invalidSignature = _generateInvalidSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, invalidSignature); + nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); vm.stopPrank(); } @@ -716,12 +729,14 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.stopPrank(); + bytes memory kycSignature = _generateKycSignature(alice, 0); + // Impersonate `alice` vm.startPrank(alice); uint256 mintQty = 4; - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, ""); + nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, "", kycSignature); assertEq(nft.balanceOf(alice), mintQty); @@ -988,6 +1003,13 @@ contract ERC721ABTest is Test, ERC721ABTestData { signature = abi.encodePacked(r, s, v); } + function _generateKycSignature(address _signFor, uint256 _nonce) internal view returns (bytes memory signature) { + // Create signature for user `signFor` for drop ID `_dropId` and phase ID `_phaseId` + bytes32 msgHash = keccak256(abi.encodePacked(_signFor, _nonce)).toEthSignedMessageHash(); + (uint8 v, bytes32 r, bytes32 s) = vm.sign(kycSignerPkey, msgHash); + signature = abi.encodePacked(r, s, v); + } + function _generateInvalidSignature(address _signFor, address _collection, uint256 _phaseId) internal pure diff --git a/test/token/ERC721/ERC721ABOE.t.sol b/test/token/ERC721/ERC721ABOE.t.sol index 3ede68d..0bef8a0 100644 --- a/test/token/ERC721/ERC721ABOE.t.sol +++ b/test/token/ERC721/ERC721ABOE.t.sol @@ -107,10 +107,10 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { abKYCModuleProxy = new TransparentUpgradeableProxy( address(new ABKYCModule()), address(proxyAdmin), - abi.encodeWithSelector(ABVerifier.initialize.selector, abSigner) + abi.encodeWithSelector(ABVerifier.initialize.selector, kycSigner) ); abKYCModule = ABKYCModule(address(abKYCModuleProxy)); - vm.label(address(abVerifier), "abVerifier"); + vm.label(address(abKYCModule), "abKYCModule"); erc1155Impl = new ERC1155AB(); vm.label(address(erc1155Impl), "erc1155Impl"); @@ -158,7 +158,6 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { abDataRegistry.grantRole(keccak256("FACTORY_ROLE"), address(anotherCloneFactory)); anotherCloneFactory.setABKYCModule(address(abKYCModule)); - anotherCloneFactory.createPublisherProfile(publisher, PUBLISHER_FEE); anotherCloneFactory.createCollection721FromImplementation(address(erc721OEImpl), publisher, NAME, SALT); From 294048f46e46c7f0758cc5790c6d776f278043bd Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Wed, 22 Nov 2023 10:38:31 +0100 Subject: [PATCH 18/74] added KYC Module integration to royalty contract --- src/factory/AnotherCloneFactory.sol | 2 +- src/royalty/ABRoyalty.sol | 63 +++++++++++++++++++++++------ src/royalty/IABRoyalty.sol | 21 ++++++---- 3 files changed, 66 insertions(+), 20 deletions(-) diff --git a/src/factory/AnotherCloneFactory.sol b/src/factory/AnotherCloneFactory.sol index 7cfa4c5..c2ed089 100644 --- a/src/factory/AnotherCloneFactory.sol +++ b/src/factory/AnotherCloneFactory.sol @@ -258,7 +258,7 @@ contract AnotherCloneFactory is AccessControlUpgradeable { ABRoyalty newRoyalty = ABRoyalty(Clones.clone(royaltyImpl)); // Initialize Payout contract - newRoyalty.initialize(_account, address(abDataRegistry)); + newRoyalty.initialize(_account, address(abDataRegistry), abKycModule); // Register new publisher within the publisher registry abDataRegistry.registerPublisher(_account, address(newRoyalty), _publisherFee); diff --git a/src/royalty/ABRoyalty.sol b/src/royalty/ABRoyalty.sol index 6065385..dd0904d 100644 --- a/src/royalty/ABRoyalty.sol +++ b/src/royalty/ABRoyalty.sol @@ -49,6 +49,7 @@ import {ABEvents} from "src/libraries/ABEvents.sol"; /* anotherblock Interfaces */ import {IABRoyalty} from "src/royalty/IABRoyalty.sol"; +import {IABKYCModule} from "src/utils/IABKYCModule.sol"; contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { using SuperTokenV1Library for ISuperToken; @@ -62,6 +63,9 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { /// @dev Publisher address address public publisher; + /// @dev anotherblock KYC Module contract interface (see IABKYCModule.sol) + IABKYCModule public abKycModule; + /// @dev NFT contract address of a given drop identifier mapping(uint256 dropId => address nft) public nftPerDropId; @@ -102,13 +106,16 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { * @param _publisher collection publisher address * @param _abDataRegistry anotherblock data registry contract address */ - function initialize(address _publisher, address _abDataRegistry) external initializer { + function initialize(address _publisher, address _abDataRegistry, address _abKycModule) external initializer { // Initialize Access Control __AccessControl_init(); _grantRole(DEFAULT_ADMIN_ROLE, _publisher); _revokeRole(DEFAULT_ADMIN_ROLE, msg.sender); _grantRole(REGISTRY_ROLE, _abDataRegistry); + // Assign ABKYCModule address + abKycModule = IABKYCModule(_abKycModule); + // Assign the publisher address publisher = _publisher; } @@ -126,7 +133,8 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { * @param _dropId drop identifier to be claimed for * */ - function claimPayout(uint256 _dropId) external { + function claimPayout(uint256 _dropId, bytes calldata _signature) external { + _beforeClaim(msg.sender, _signature); // Claim payout for the current Drop ID _claimPayout(_dropId, msg.sender); } @@ -138,7 +146,9 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { * @param _dropIds array of drop identifiers to be claimed for * */ - function claimPayouts(uint256[] calldata _dropIds) external { + function claimPayouts(uint256[] calldata _dropIds, bytes calldata _signature) external { + _beforeClaim(msg.sender, _signature); + uint256 length = _dropIds.length; for (uint256 i = 0; i < length; ++i) { _claimPayout(_dropIds[i], msg.sender); @@ -173,7 +183,12 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { * * @param _user address of the user to be claimed for */ - function claimPayoutsOnBehalf(uint256 _dropId, address _user) external onlyRole(AB_ADMIN_ROLE) { + function claimPayoutsOnBehalf(uint256 _dropId, address _user, bytes calldata _signature) + external + onlyRole(AB_ADMIN_ROLE) + { + _beforeClaim(_user, _signature); + // Claim payout for the current Drop ID _claimPayout(_dropId, _user); } @@ -185,7 +200,12 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { * * @param _user address of the user to be claimed for */ - function claimPayoutsOnBehalf(uint256[] calldata _dropIds, address _user) external onlyRole(AB_ADMIN_ROLE) { + function claimPayoutsOnBehalf(uint256[] calldata _dropIds, address _user, bytes calldata _signature) + external + onlyRole(AB_ADMIN_ROLE) + { + _beforeClaim(_user, _signature); + uint256 length = _dropIds.length; for (uint256 i = 0; i < length; ++i) { _claimPayout(_dropIds[i], _user); @@ -199,13 +219,21 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { * * @param _dropId drop identifier to be claimed * @param _users array containing the users addresses to be claimed for + * @param _signatures array containing the KYC signatures (for each user in `_users`) */ - function claimPayoutsOnMultipleBehalf(uint256 _dropId, address[] calldata _users) + function claimPayoutsOnMultipleBehalf(uint256 _dropId, address[] calldata _users, bytes[] calldata _signatures) external onlyRole(AB_ADMIN_ROLE) { + uint256 uLength = _users.length; + uint256 sLength = _signatures.length; + + if (sLength != uLength) revert ABErrors.INVALID_PARAMETER(); + // Loop through all users passed as parameter - for (uint256 i = 0; i < _users.length; ++i) { + for (uint256 i = 0; i < uLength; ++i) { + _beforeClaim(_users[i], _signatures[i]); + // Claim payout for the current Drop ID _claimPayout(_dropId, _users[i]); } @@ -218,16 +246,23 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { * * @param _dropIds array containing the Drop IDs to be claimed * @param _users array containing the users addresses to be claimed for + * @param _signatures array containing the KYC signatures (for each user in `_users`) */ - function claimPayoutsOnMultipleBehalf(uint256[] calldata _dropIds, address[] calldata _users) - external - onlyRole(AB_ADMIN_ROLE) - { + function claimPayoutsOnMultipleBehalf( + uint256[] calldata _dropIds, + address[] calldata _users, + bytes[] calldata _signatures + ) external onlyRole(AB_ADMIN_ROLE) { uint256 uLength = _users.length; uint256 dLength = _dropIds.length; + uint256 sLength = _signatures.length; + + if (sLength != uLength) revert ABErrors.INVALID_PARAMETER(); // Loop through all users passed as parameter for (uint256 i = 0; i < uLength; ++i) { + _beforeClaim(_users[i], _signatures[i]); + // Loop through all Drop IDs passed as parameter for (uint256 j = 0; j < dLength; ++j) { // Claim payout for the current Drop ID @@ -292,7 +327,7 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { } } - /** + /** * @notice * Update the subscription units for the previous holder and the new holder * Only anotherblock Data Registry contract can perform this operation @@ -464,4 +499,8 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { // Claim the distributed Tokens royaltyCurrency[_dropId].claim(address(this), uint32(_dropId), _user); } + + function _beforeClaim(address _user, bytes calldata _signature) internal { + abKycModule.onRoyaltyClaim(_user, _signature); + } } diff --git a/src/royalty/IABRoyalty.sol b/src/royalty/IABRoyalty.sol index 4c3d61d..b0dfce4 100644 --- a/src/royalty/IABRoyalty.sol +++ b/src/royalty/IABRoyalty.sol @@ -49,7 +49,7 @@ interface IABRoyalty { * @param _dropId drop identifier to be claimed for * */ - function claimPayout(uint256 _dropId) external; + function claimPayout(uint256 _dropId, bytes calldata _signature) external; /** * @notice @@ -58,7 +58,7 @@ interface IABRoyalty { * @param _dropIds array of drop identifiers to be claimed for * */ - function claimPayouts(uint256[] calldata _dropIds) external; + function claimPayouts(uint256[] calldata _dropIds, bytes calldata _signature) external; // ____ __ ___ __ _ // / __ \____ / /_ __ / | ____/ /___ ___ (_)___ @@ -77,6 +77,7 @@ interface IABRoyalty { * @param _prepaid boolean indicating if the royalty has already been transferred to this contract */ function distribute(uint256 _dropId, uint256 _amount, bool _prepaid) external; + /** * @notice * Claim the owed royalties for the given Drop IDs on behalf of the user @@ -84,8 +85,7 @@ interface IABRoyalty { * * @param _user address of the user to be claimed for */ - - function claimPayoutsOnBehalf(uint256 _dropId, address _user) external; + function claimPayoutsOnBehalf(uint256 _dropId, address _user, bytes calldata _signature) external; /** * @notice @@ -94,7 +94,7 @@ interface IABRoyalty { * * @param _user address of the user to be claimed for */ - function claimPayoutsOnBehalf(uint256[] calldata _dropIds, address _user) external; + function claimPayoutsOnBehalf(uint256[] calldata _dropIds, address _user, bytes calldata _signature) external; /** * @notice @@ -103,8 +103,10 @@ interface IABRoyalty { * * @param _dropId drop identifier to be claimed * @param _users array containing the users addresses to be claimed for + * @param _signatures array containing the KYC signatures (for each user in `_users`) */ - function claimPayoutsOnMultipleBehalf(uint256 _dropId, address[] calldata _users) external; + function claimPayoutsOnMultipleBehalf(uint256 _dropId, address[] calldata _users, bytes[] calldata _signatures) + external; /** * @notice @@ -113,8 +115,13 @@ interface IABRoyalty { * * @param _dropIds array containing the Drop IDs to be claimed * @param _users array containing the users addresses to be claimed for + * @param _signatures array containing the KYC signatures (for each user in `_users`) */ - function claimPayoutsOnMultipleBehalf(uint256[] calldata _dropIds, address[] calldata _users) external; + function claimPayoutsOnMultipleBehalf( + uint256[] calldata _dropIds, + address[] calldata _users, + bytes[] calldata _signatures + ) external; // ____ __ ____ _ __ // / __ \____ / /_ __ / __ \___ ____ _(_)____/ /________ __ From 06a9215d545c1e21f2cd59502f551bb2d87434db Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Wed, 22 Nov 2023 10:56:01 +0100 Subject: [PATCH 19/74] updated fct visibility --- src/royalty/ABRoyalty.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/royalty/ABRoyalty.sol b/src/royalty/ABRoyalty.sol index dd0904d..1cde395 100644 --- a/src/royalty/ABRoyalty.sol +++ b/src/royalty/ABRoyalty.sol @@ -500,7 +500,7 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { royaltyCurrency[_dropId].claim(address(this), uint32(_dropId), _user); } - function _beforeClaim(address _user, bytes calldata _signature) internal { + function _beforeClaim(address _user, bytes calldata _signature) internal view { abKycModule.onRoyaltyClaim(_user, _signature); } } From d2be2aeefcea1e8677515b3219da1ebb9d2fe6a7 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Wed, 22 Nov 2023 10:56:12 +0100 Subject: [PATCH 20/74] updated fct visibility --- src/token/ERC721/ERC721AB.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/token/ERC721/ERC721AB.sol b/src/token/ERC721/ERC721AB.sol index 1dbbd2f..9b9fa8b 100644 --- a/src/token/ERC721/ERC721AB.sol +++ b/src/token/ERC721/ERC721AB.sol @@ -378,7 +378,7 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { _firstTokenId = 1; } - function _beforeMint(address _to, bytes calldata _signature) internal { + function _beforeMint(address _to, bytes calldata _signature) internal view { abKYCModule.onMint(_to, _signature); } From b088afe95bc051483c5bc1fb7c3544628755ec25 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Wed, 22 Nov 2023 10:56:26 +0100 Subject: [PATCH 21/74] KYC Module update --- src/utils/ABKYCModule.sol | 10 ++++++---- src/utils/IABKYCModule.sol | 6 +++--- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/utils/ABKYCModule.sol b/src/utils/ABKYCModule.sol index 5c433f8..9d1c0b2 100644 --- a/src/utils/ABKYCModule.sol +++ b/src/utils/ABKYCModule.sol @@ -114,10 +114,12 @@ contract ABKYCModule is IABKYCModule, AccessControlUpgradeable { * @param _signature signature generated by AB Backend and signed by AB KYC Signer */ function onMint(address _user, bytes calldata _signature) external view { - bytes32 digest = keccak256( - abi.encodePacked("\x19Ethereum Signed Message:\n32", keccak256(abi.encodePacked(_user, currentNonce))) - ); - if (digest.recover(_signature) != defaultSigner) revert ABErrors.NO_KYC(); + /// NOTE : Below logic is an example of KYC verification + + // bytes32 digest = keccak256( + // abi.encodePacked("\x19Ethereum Signed Message:\n32", keccak256(abi.encodePacked(_user, currentNonce))) + // ); + // if (digest.recover(_signature) != defaultSigner) revert ABErrors.NO_KYC(); } /** diff --git a/src/utils/IABKYCModule.sol b/src/utils/IABKYCModule.sol index 011757f..70e8029 100644 --- a/src/utils/IABKYCModule.sol +++ b/src/utils/IABKYCModule.sol @@ -49,7 +49,7 @@ interface IABKYCModule { * @param _user user address * @param _signature signature generated by AB Backend and signed by AB KYC Signer */ - function onMint(address _user, bytes calldata _signature) external; + function onMint(address _user, bytes calldata _signature) external view; /** * @notice @@ -57,7 +57,7 @@ interface IABKYCModule { * * @param _to user address */ - function onTransfer(address _to) external; + function onTransfer(address _to) external view; /** * @notice @@ -66,7 +66,7 @@ interface IABKYCModule { * @param _user user address * @param _signature signature generated by AB Backend and signed by AB KYC Signer */ - function onRoyaltyClaim(address _user, bytes calldata _signature) external; + function onRoyaltyClaim(address _user, bytes calldata _signature) external view; // ____ __ ___ __ _ // / __ \____ / /_ __ / | ____/ /___ ___ (_)___ From 3a82de1d3819884a5fd6577dd52fc0ac4dfde667 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Wed, 22 Nov 2023 10:56:48 +0100 Subject: [PATCH 22/74] updated unit tests for KYCModule integration in abRoyalty --- test/royalty/ABRoyalty.t.sol | 68 ++++++++++++++++++++++++++---- test/token/ERC721/ERC721ABLE.t.sol | 2 +- test/token/ERC721/ERC721ABOE.t.sol | 2 +- test/utils/ABDataRegistry.t.sol | 18 +++++++- 4 files changed, 78 insertions(+), 12 deletions(-) diff --git a/test/royalty/ABRoyalty.t.sol b/test/royalty/ABRoyalty.t.sol index 82b7efe..c0d9243 100644 --- a/test/royalty/ABRoyalty.t.sol +++ b/test/royalty/ABRoyalty.t.sol @@ -8,29 +8,36 @@ import {ERC1155AB} from "src/token/ERC1155/ERC1155AB.sol"; import {ABDataRegistry} from "src/utils/ABDataRegistry.sol"; import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; import {ABVerifier} from "src/utils/ABVerifier.sol"; +import {ABKYCModule} from "src/utils/ABKYCModule.sol"; import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; import {ABErrors} from "src/libraries/ABErrors.sol"; import {ABSuperToken} from "test/_mocks/ABSuperToken.sol"; import {ABRoyaltyTestData} from "test/_testdata/ABRoyalty.td.sol"; +import {ECDSA} from "@openzeppelin/contracts/utils/cryptography/ECDSA.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; import {ProxyAdmin} from "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol"; /* solhint-disable */ contract ABRoyaltyTest is Test, ABRoyaltyTestData { + using ECDSA for bytes32; + /* Users */ address payable public publisher; /* Admin */ uint256 public abSignerPkey = 69; address public abSigner; + uint256 public kycSignerPkey = 420; + address public kycSigner; address public genesisRecipient; address payable public treasury; /* Contracts */ ABSuperToken public royaltyToken; + ABKYCModule public abKYCModule; ABRoyalty public abRoyaltyImpl; ABVerifier public abVerifier; ABDataRegistry public abDataRegistry; @@ -41,6 +48,7 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { TransparentUpgradeableProxy public anotherCloneFactoryProxy; TransparentUpgradeableProxy public abDataRegistryProxy; TransparentUpgradeableProxy public abVerifierProxy; + TransparentUpgradeableProxy public abKYCModuleProxy; ABRoyalty public abRoyalty; @@ -48,10 +56,11 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { string public BASE_RPC_URL = vm.envString("BASE_RPC"); function setUp() public { - vm.selectFork(vm.createFork(BASE_RPC_URL, 1445932)); + vm.selectFork(vm.createFork(BASE_RPC_URL, 6900000)); /* Setup admins */ abSigner = vm.addr(abSignerPkey); + kycSigner = vm.addr(kycSignerPkey); genesisRecipient = vm.addr(100); treasury = payable(vm.addr(1000)); vm.label(treasury, "treasury"); @@ -77,6 +86,14 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { abVerifier = ABVerifier(address(abVerifierProxy)); vm.label(address(abVerifier), "abVerifier"); + abKYCModuleProxy = new TransparentUpgradeableProxy( + address(new ABKYCModule()), + address(proxyAdmin), + abi.encodeWithSelector(ABKYCModule.initialize.selector, kycSigner) + ); + abKYCModule = ABKYCModule(address(abKYCModuleProxy)); + vm.label(address(abKYCModule), "abKYCModule"); + erc1155Impl = new ERC1155AB(); vm.label(address(erc1155Impl), "erc1155Impl"); @@ -117,6 +134,8 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { /* Init contracts params */ abDataRegistry.grantRole(keccak256("FACTORY_ROLE"), address(anotherCloneFactory)); + anotherCloneFactory.setABKYCModule(address(abKYCModule)); + anotherCloneFactory.createPublisherProfile(publisher, PUBLISHER_FEE); address abRoyaltyAddr = abDataRegistry.publishers(publisher); @@ -132,7 +151,7 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { ); abRoyalty = ABRoyalty(address(abRoyaltyProxy)); - abRoyalty.initialize(publisher, address(abDataRegistry)); + abRoyalty.initialize(publisher, address(abDataRegistry), address(abKYCModule)); assertEq(abRoyalty.publisher(), publisher); assertEq(abRoyalty.hasRole(DEFAULT_ADMIN_ROLE_HASH, publisher), true); @@ -142,7 +161,7 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { function test_initialize_alreadyInitialized() public { vm.expectRevert("Initializable: contract is already initialized"); - abRoyalty.initialize(publisher, address(abDataRegistry)); + abRoyalty.initialize(publisher, address(abDataRegistry), address(abKYCModule)); } function test_initPayoutIndex_correctRole(address _sender, address _nft, uint256 _dropId) public { @@ -598,8 +617,10 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { assertEq(royaltyToken.balanceOf(_holder), 0); + bytes memory kycSignature = _generateKycSignature(_holder, 0); + vm.prank(_holder); - abRoyalty.claimPayout(_dropId); + abRoyalty.claimPayout(_dropId, kycSignature); assertEq(royaltyToken.balanceOf(_holder), 100e18 - (100e18 % (_quantity * UNITS_PRECISION))); } @@ -645,8 +666,10 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { dropIds[0] = _dropId1; dropIds[1] = _dropId2; + bytes memory kycSignature = _generateKycSignature(_holder, 0); + vm.prank(_holder); - abRoyalty.claimPayouts(dropIds); + abRoyalty.claimPayouts(dropIds, kycSignature); assertEq(royaltyToken.balanceOf(_holder), 2 * (100e18 - (100e18 % (_quantity * UNITS_PRECISION)))); } @@ -681,8 +704,10 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { assertEq(royaltyToken.balanceOf(_holder), 0); + bytes memory kycSignature = _generateKycSignature(_holder, 0); + vm.prank(_sender); - abRoyalty.claimPayoutsOnBehalf(_dropId, _holder); + abRoyalty.claimPayoutsOnBehalf(_dropId, _holder, kycSignature); assertEq(royaltyToken.balanceOf(_holder), 100e18 - (100e18 % (_quantity * UNITS_PRECISION))); } @@ -726,8 +751,16 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { holders[0] = _holderA; holders[1] = _holderB; + bytes[] memory kycSignatures = new bytes[](2); + + bytes memory kycSignatureA = _generateKycSignature(_holderA, 0); + bytes memory kycSignatureB = _generateKycSignature(_holderB, 0); + + kycSignatures[0] = kycSignatureA; + kycSignatures[1] = kycSignatureB; + vm.prank(_sender); - abRoyalty.claimPayoutsOnMultipleBehalf(_dropId, holders); + abRoyalty.claimPayoutsOnMultipleBehalf(_dropId, holders, kycSignatures); assertEq(royaltyToken.balanceOf(_holderA), 50e18); assertEq(royaltyToken.balanceOf(_holderB), 50e18); @@ -774,8 +807,10 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { dropIds[0] = _dropId1; dropIds[1] = _dropId2; + bytes memory kycSignature = _generateKycSignature(_holder, 0); + vm.prank(_sender); - abRoyalty.claimPayoutsOnBehalf(dropIds, _holder); + abRoyalty.claimPayoutsOnBehalf(dropIds, _holder, kycSignature); assertEq(royaltyToken.balanceOf(_holder), 2 * (100e18 - (100e18 % (_quantity * UNITS_PRECISION)))); } @@ -830,8 +865,16 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { users[0] = _holderA; users[1] = _holderB; + bytes[] memory kycSignatures = new bytes[](2); + + bytes memory kycSignatureA = _generateKycSignature(_holderA, 0); + bytes memory kycSignatureB = _generateKycSignature(_holderB, 0); + + kycSignatures[0] = kycSignatureA; + kycSignatures[1] = kycSignatureB; + vm.prank(_sender); - abRoyalty.claimPayoutsOnMultipleBehalf(dropIds, users); + abRoyalty.claimPayoutsOnMultipleBehalf(dropIds, users, kycSignatures); assertEq(royaltyToken.balanceOf(_holderA), 100e18); assertEq(royaltyToken.balanceOf(_holderB), 100e18); @@ -878,4 +921,11 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { assertEq(totalUnitsApproved, 0); assertEq(totalUnitsPending, _quantity * UNITS_PRECISION); } + + function _generateKycSignature(address _signFor, uint256 _nonce) internal view returns (bytes memory signature) { + // Create signature for user `signFor` for drop ID `_dropId` and phase ID `_phaseId` + bytes32 msgHash = keccak256(abi.encodePacked(_signFor, _nonce)).toEthSignedMessageHash(); + (uint8 v, bytes32 r, bytes32 s) = vm.sign(kycSignerPkey, msgHash); + signature = abi.encodePacked(r, s, v); + } } diff --git a/test/token/ERC721/ERC721ABLE.t.sol b/test/token/ERC721/ERC721ABLE.t.sol index e9bb1a4..9019e58 100644 --- a/test/token/ERC721/ERC721ABLE.t.sol +++ b/test/token/ERC721/ERC721ABLE.t.sol @@ -115,7 +115,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { abKYCModuleProxy = new TransparentUpgradeableProxy( address(new ABKYCModule()), address(proxyAdmin), - abi.encodeWithSelector(ABVerifier.initialize.selector, kycSigner) + abi.encodeWithSelector(ABKYCModule.initialize.selector, kycSigner) ); abKYCModule = ABKYCModule(address(abKYCModuleProxy)); vm.label(address(abKYCModule), "abKYCModule"); diff --git a/test/token/ERC721/ERC721ABOE.t.sol b/test/token/ERC721/ERC721ABOE.t.sol index 0bef8a0..dfce7df 100644 --- a/test/token/ERC721/ERC721ABOE.t.sol +++ b/test/token/ERC721/ERC721ABOE.t.sol @@ -107,7 +107,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { abKYCModuleProxy = new TransparentUpgradeableProxy( address(new ABKYCModule()), address(proxyAdmin), - abi.encodeWithSelector(ABVerifier.initialize.selector, kycSigner) + abi.encodeWithSelector(ABKYCModule.initialize.selector, kycSigner) ); abKYCModule = ABKYCModule(address(abKYCModuleProxy)); vm.label(address(abKYCModule), "abKYCModule"); diff --git a/test/utils/ABDataRegistry.t.sol b/test/utils/ABDataRegistry.t.sol index cc76d0b..17ea8d3 100644 --- a/test/utils/ABDataRegistry.t.sol +++ b/test/utils/ABDataRegistry.t.sol @@ -7,6 +7,7 @@ import {ABDataRegistry} from "src/utils/ABDataRegistry.sol"; import {ABErrors} from "src/libraries/ABErrors.sol"; import {ABSuperToken} from "test/_mocks/ABSuperToken.sol"; import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; +import {ABKYCModule} from "src/utils/ABKYCModule.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; @@ -25,14 +26,20 @@ contract ABDataRegistryTest is Test { address payable public abTreasury; address public publisher; + /* Signer */ + uint256 public kycSignerPkey = 420; + address public kycSigner; + /* Contracts */ ABDataRegistry public abDataRegistry; ABSuperToken public royaltyToken; ABRoyalty public abRoyalty; + ABKYCModule public abKYCModule; ProxyAdmin public proxyAdmin; TransparentUpgradeableProxy public abDataRegistryProxy; TransparentUpgradeableProxy public abRoyaltyProxy; + TransparentUpgradeableProxy public abKYCModuleProxy; /* Environment Variables */ string public BASE_RPC_URL = vm.envString("BASE_RPC"); @@ -41,6 +48,7 @@ contract ABDataRegistryTest is Test { vm.selectFork(vm.createFork(BASE_RPC_URL, 1445932)); abTreasury = payable(vm.addr(1000)); publisher = payable(vm.addr(2000)); + kycSigner = vm.addr(kycSignerPkey); /* Contracts Deployments & Initialization */ proxyAdmin = new ProxyAdmin(); @@ -58,10 +66,18 @@ contract ABDataRegistryTest is Test { royaltyToken.initialize(IERC20(address(0)), 18, "fakeSuperToken", "FST"); vm.label(address(royaltyToken), "royaltyToken"); + abKYCModuleProxy = new TransparentUpgradeableProxy( + address(new ABKYCModule()), + address(proxyAdmin), + abi.encodeWithSelector(ABKYCModule.initialize.selector, kycSigner) + ); + abKYCModule = ABKYCModule(address(abKYCModuleProxy)); + vm.label(address(abKYCModule), "abKYCModule"); + abRoyaltyProxy = new TransparentUpgradeableProxy( address(new ABRoyalty()), address(proxyAdmin), - abi.encodeWithSelector(ABRoyalty.initialize.selector, publisher, address(abDataRegistry)) + abi.encodeWithSelector(ABRoyalty.initialize.selector, publisher, address(abDataRegistry), address(abKYCModule)) ); abRoyalty = ABRoyalty(address(abRoyaltyProxy)); vm.label(address(abRoyalty), "abRoyalty"); From d85f1316d1c276e013b57713f685ea33255853fd Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Wed, 22 Nov 2023 10:56:55 +0100 Subject: [PATCH 23/74] cache --- forge-cache/solidity-files-cache.json | 60 ++++++++++++++++----------- 1 file changed, 36 insertions(+), 24 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 11bac45..a7a4230 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -4798,7 +4798,8 @@ "src/royalty/ABRoyalty.sol", "src/royalty/IABRoyalty.sol", "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol" + "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol" ], "versionRequirement": "^0.8.18", "artifacts": { @@ -5402,7 +5403,8 @@ "src/royalty/ABRoyalty.sol", "src/royalty/IABRoyalty.sol", "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol" + "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol" ], "versionRequirement": "^0.8.18", "artifacts": { @@ -5819,7 +5821,7 @@ } }, "script/base-goerli/fireblocks/deploy-royalty.s.sol": { - "lastModificationDate": 1699431251723, + "lastModificationDate": 1700559566835, "contentHash": "8f8077a3a079d877814bee151a073325", "sourceName": "script/base-goerli/fireblocks/deploy-royalty.s.sol", "solcConfig": { @@ -5902,7 +5904,8 @@ "src/royalty/ABRoyalty.sol", "src/royalty/IABRoyalty.sol", "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol" + "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol" ], "versionRequirement": "^0.8.18", "artifacts": { @@ -6214,7 +6217,7 @@ } }, "script/goerli/fireblocks/deploy-royalty.s.sol": { - "lastModificationDate": 1699431251724, + "lastModificationDate": 1700559566836, "contentHash": "8f8077a3a079d877814bee151a073325", "sourceName": "script/goerli/fireblocks/deploy-royalty.s.sol", "solcConfig": { @@ -6297,7 +6300,8 @@ "src/royalty/ABRoyalty.sol", "src/royalty/IABRoyalty.sol", "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol" + "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol" ], "versionRequirement": "^0.8.18", "artifacts": { @@ -6590,7 +6594,8 @@ "src/royalty/ABRoyalty.sol", "src/royalty/IABRoyalty.sol", "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol" + "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol" ], "versionRequirement": "^0.8.18", "artifacts": { @@ -6600,8 +6605,8 @@ } }, "src/factory/AnotherCloneFactory.sol": { - "lastModificationDate": 1700573976409, - "contentHash": "53ca5821f7b41a3b57394f7334ab6062", + "lastModificationDate": 1700579304455, + "contentHash": "b5ced6a0649e68a9a9b89eb5ed9cbc98", "sourceName": "src/factory/AnotherCloneFactory.sol", "solcConfig": { "settings": { @@ -6812,8 +6817,8 @@ } }, "src/royalty/ABRoyalty.sol": { - "lastModificationDate": 1695374870141, - "contentHash": "b245d965a64ac207654b99c35b633852", + "lastModificationDate": 1700646449156, + "contentHash": "a9f9381470465479abb36fc7bb95534d", "sourceName": "src/royalty/ABRoyalty.sol", "solcConfig": { "settings": { @@ -6871,7 +6876,8 @@ "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", "src/libraries/ABErrors.sol", "src/libraries/ABEvents.sol", - "src/royalty/IABRoyalty.sol" + "src/royalty/IABRoyalty.sol", + "src/utils/IABKYCModule.sol" ], "versionRequirement": "^0.8.18", "artifacts": { @@ -6881,8 +6887,8 @@ } }, "src/royalty/IABRoyalty.sol": { - "lastModificationDate": 1695374870141, - "contentHash": "0f8ece50d5fa6fa360a39af9be68a08a", + "lastModificationDate": 1700579269833, + "contentHash": "0bfe5b9b415c03d284b81b7295b9e873", "sourceName": "src/royalty/IABRoyalty.sol", "solcConfig": { "settings": { @@ -7371,8 +7377,8 @@ } }, "src/utils/IABKYCModule.sol": { - "lastModificationDate": 1700574936548, - "contentHash": "bdc49262abd7578e36a56b810e2c3317", + "lastModificationDate": 1700646511339, + "contentHash": "510f664aa96296e67b7d2b72c49987bd", "sourceName": "src/utils/IABKYCModule.sol", "solcConfig": { "settings": { @@ -8041,8 +8047,8 @@ } }, "test/royalty/ABRoyalty.t.sol": { - "lastModificationDate": 1699523979386, - "contentHash": "1709c4b58e65fec2eb5d4f2a98d2dab4", + "lastModificationDate": 1700646761338, + "contentHash": "2a17b4a049a2b88bdc4cb3edd899ea27", "sourceName": "test/royalty/ABRoyalty.t.sol", "solcConfig": { "settings": { @@ -8165,6 +8171,7 @@ "src/token/ERC721/ERC721AB.sol", "src/token/ERC721/ERC721ABLE.sol", "src/utils/ABDataRegistry.sol", + "src/utils/ABKYCModule.sol", "src/utils/ABVerifier.sol", "src/utils/IABDataRegistry.sol", "src/utils/IABKYCModule.sol", @@ -8327,8 +8334,8 @@ } }, "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1700576428402, - "contentHash": "b63835fd428e30d426241b40af0fa20a", + "lastModificationDate": 1700644327821, + "contentHash": "f2d50bad5a51eea627b673c44e38d776", "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", "solcConfig": { "settings": { @@ -8470,8 +8477,8 @@ } }, "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1700576280636, - "contentHash": "d3e6cf7efdc73aa30d1b24a4e7312dcf", + "lastModificationDate": 1700644316458, + "contentHash": "62a5f9653b561bb7ff332b990c95143d", "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", "solcConfig": { "settings": { @@ -8613,8 +8620,8 @@ } }, "test/utils/ABDataRegistry.t.sol": { - "lastModificationDate": 1698763838746, - "contentHash": "c5537f68bf6c3c9c871bbde7e9d6c952", + "lastModificationDate": 1700645846547, + "contentHash": "be3699f7b5604b530d1a4ccdfd82d544", "sourceName": "test/utils/ABDataRegistry.t.sol", "solcConfig": { "settings": { @@ -8681,7 +8688,10 @@ "lib/openzeppelin-contracts/contracts/utils/Address.sol", "lib/openzeppelin-contracts/contracts/utils/Context.sol", "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", @@ -8719,7 +8729,9 @@ "src/royalty/ABRoyalty.sol", "src/royalty/IABRoyalty.sol", "src/utils/ABDataRegistry.sol", + "src/utils/ABKYCModule.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "test/_mocks/ABSuperToken.sol" ], "versionRequirement": "^0.8.18", From f5b10693e84a1209c89113435004b02f571327c5 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Wed, 22 Nov 2023 11:21:12 +0100 Subject: [PATCH 24/74] cache --- forge-cache/solidity-files-cache.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index a7a4230..01cfd07 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -6817,8 +6817,8 @@ } }, "src/royalty/ABRoyalty.sol": { - "lastModificationDate": 1700646449156, - "contentHash": "a9f9381470465479abb36fc7bb95534d", + "lastModificationDate": 1700646835822, + "contentHash": "af0659a29b8411c92923c831f4541ade", "sourceName": "src/royalty/ABRoyalty.sol", "solcConfig": { "settings": { @@ -6986,8 +6986,8 @@ } }, "src/token/ERC721/ERC721AB.sol": { - "lastModificationDate": 1700574958504, - "contentHash": "5317b28432068c6e7dd756d49835a21a", + "lastModificationDate": 1700646892815, + "contentHash": "eba8098d70dbc85feacc66460f42afc7", "sourceName": "src/token/ERC721/ERC721AB.sol", "solcConfig": { "settings": { @@ -7224,8 +7224,8 @@ } }, "src/utils/ABKYCModule.sol": { - "lastModificationDate": 1700576129054, - "contentHash": "42ab43aa33741ee2149bb73cd961ffcf", + "lastModificationDate": 1700646937159, + "contentHash": "fdaf1f57f1b7e5fd3b3f4f584e8006e9", "sourceName": "src/utils/ABKYCModule.sol", "solcConfig": { "settings": { From d4d33f56b00829dc0f3084d12d6fcb21d389ebbb Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Wed, 22 Nov 2023 11:31:42 +0100 Subject: [PATCH 25/74] updated fork block number in tests --- forge-cache/solidity-files-cache.json | 4 ++-- test/utils/ABDataRegistry.t.sol | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index c32a679..ede9dbf 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -8620,8 +8620,8 @@ } }, "test/utils/ABDataRegistry.t.sol": { - "lastModificationDate": 1700645846547, - "contentHash": "be3699f7b5604b530d1a4ccdfd82d544", + "lastModificationDate": 1700648984892, + "contentHash": "5d7f7b52142a593d8d5f2b5782cf6366", "sourceName": "test/utils/ABDataRegistry.t.sol", "solcConfig": { "settings": { diff --git a/test/utils/ABDataRegistry.t.sol b/test/utils/ABDataRegistry.t.sol index 17ea8d3..ba70cb1 100644 --- a/test/utils/ABDataRegistry.t.sol +++ b/test/utils/ABDataRegistry.t.sol @@ -45,7 +45,7 @@ contract ABDataRegistryTest is Test { string public BASE_RPC_URL = vm.envString("BASE_RPC"); function setUp() public { - vm.selectFork(vm.createFork(BASE_RPC_URL, 1445932)); + vm.selectFork(vm.createFork(BASE_RPC_URL, 6900000)); abTreasury = payable(vm.addr(1000)); publisher = payable(vm.addr(2000)); kycSigner = vm.addr(kycSignerPkey); From debe5a5f16228f78a55882d33fe82aed918a59ba Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Thu, 23 Nov 2023 10:29:58 +0100 Subject: [PATCH 26/74] rename hooks --- src/royalty/ABRoyalty.sol | 2 +- src/token/ERC721/ERC721AB.sol | 2 +- src/utils/ABKYCModule.sol | 6 +++--- src/utils/IABKYCModule.sol | 6 +++--- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/royalty/ABRoyalty.sol b/src/royalty/ABRoyalty.sol index 1cde395..aca8777 100644 --- a/src/royalty/ABRoyalty.sol +++ b/src/royalty/ABRoyalty.sol @@ -501,6 +501,6 @@ contract ABRoyalty is IABRoyalty, Initializable, AccessControlUpgradeable { } function _beforeClaim(address _user, bytes calldata _signature) internal view { - abKycModule.onRoyaltyClaim(_user, _signature); + abKycModule.beforeRoyaltyClaim(_user, _signature); } } diff --git a/src/token/ERC721/ERC721AB.sol b/src/token/ERC721/ERC721AB.sol index 9b9fa8b..0ae0927 100644 --- a/src/token/ERC721/ERC721AB.sol +++ b/src/token/ERC721/ERC721AB.sol @@ -379,7 +379,7 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { } function _beforeMint(address _to, bytes calldata _signature) internal view { - abKYCModule.onMint(_to, _signature); + abKYCModule.beforeMint(_to, _signature); } function _beforeTokenTransfers(address _from, address _to, uint256, /* _startTokenId */ uint256 _quantity) diff --git a/src/utils/ABKYCModule.sol b/src/utils/ABKYCModule.sol index 9d1c0b2..92fa793 100644 --- a/src/utils/ABKYCModule.sol +++ b/src/utils/ABKYCModule.sol @@ -113,7 +113,7 @@ contract ABKYCModule is IABKYCModule, AccessControlUpgradeable { * @param _user user address * @param _signature signature generated by AB Backend and signed by AB KYC Signer */ - function onMint(address _user, bytes calldata _signature) external view { + function beforeMint(address _user, bytes calldata _signature) external view { /// NOTE : Below logic is an example of KYC verification // bytes32 digest = keccak256( @@ -128,7 +128,7 @@ contract ABKYCModule is IABKYCModule, AccessControlUpgradeable { * * @param _to user address */ - function onTransfer(address _to) external view {} + function beforeTransfer(address _to) external view {} /** * @notice @@ -137,7 +137,7 @@ contract ABKYCModule is IABKYCModule, AccessControlUpgradeable { * @param _user user address * @param _signature signature generated by AB Backend and signed by AB KYC Signer */ - function onRoyaltyClaim(address _user, bytes calldata _signature) external view {} + function beforeRoyaltyClaim(address _user, bytes calldata _signature) external view {} // ____ __ ___ __ _ // / __ \____ / /_ __ / | ____/ /___ ___ (_)___ diff --git a/src/utils/IABKYCModule.sol b/src/utils/IABKYCModule.sol index 70e8029..f534e32 100644 --- a/src/utils/IABKYCModule.sol +++ b/src/utils/IABKYCModule.sol @@ -49,7 +49,7 @@ interface IABKYCModule { * @param _user user address * @param _signature signature generated by AB Backend and signed by AB KYC Signer */ - function onMint(address _user, bytes calldata _signature) external view; + function beforeMint(address _user, bytes calldata _signature) external view; /** * @notice @@ -57,7 +57,7 @@ interface IABKYCModule { * * @param _to user address */ - function onTransfer(address _to) external view; + function beforeTransfer(address _to) external view; /** * @notice @@ -66,7 +66,7 @@ interface IABKYCModule { * @param _user user address * @param _signature signature generated by AB Backend and signed by AB KYC Signer */ - function onRoyaltyClaim(address _user, bytes calldata _signature) external view; + function beforeRoyaltyClaim(address _user, bytes calldata _signature) external view; // ____ __ ___ __ _ // / __ \____ / /_ __ / | ____/ /___ ___ (_)___ From 2b39b4721664af26eb8c167102ac52795a77fa88 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Thu, 23 Nov 2023 10:30:07 +0100 Subject: [PATCH 27/74] fix assume in fuzz test --- test/utils/ABDataRegistry.t.sol | 1 + 1 file changed, 1 insertion(+) diff --git a/test/utils/ABDataRegistry.t.sol b/test/utils/ABDataRegistry.t.sol index ba70cb1..f6b0ee7 100644 --- a/test/utils/ABDataRegistry.t.sol +++ b/test/utils/ABDataRegistry.t.sol @@ -431,6 +431,7 @@ contract ABDataRegistryTest is Test { } function test_distributeOnBehalf_correctRole(address _sender, address _holder) public { + vm.assume(_sender != address(proxyAdmin)); vm.assume(_sender != address(0)); vm.assume(_holder != address(0)); vm.assume(_holder != address(abRoyalty)); From c406f758a573b32ca0fbc525eebb51e29997b166 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Thu, 23 Nov 2023 10:30:12 +0100 Subject: [PATCH 28/74] cache --- forge-cache/solidity-files-cache.json | 50 +++++++++++++-------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index ede9dbf..5742b6c 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -4310,7 +4310,7 @@ } }, "script/base/create-publisher.s.sol": { - "lastModificationDate": 1688715359852, + "lastModificationDate": 1693465366216, "contentHash": "66795bf71d6064ceb68bf8b87fcf82ef", "sourceName": "script/base/create-publisher.s.sol", "solcConfig": { @@ -4715,7 +4715,7 @@ } }, "script/base/deploy-royalty.s.sol": { - "lastModificationDate": 1689774928279, + "lastModificationDate": 1695374870138, "contentHash": "8f8077a3a079d877814bee151a073325", "sourceName": "script/base/deploy-royalty.s.sol", "solcConfig": { @@ -4914,7 +4914,7 @@ } }, "script/base-goerli/create-publisher.s.sol": { - "lastModificationDate": 1690989943841, + "lastModificationDate": 1695374870137, "contentHash": "e2267180499cb7133e1684156d386c07", "sourceName": "script/base-goerli/create-publisher.s.sol", "solcConfig": { @@ -5320,7 +5320,7 @@ } }, "script/base-goerli/deploy-royalty.s.sol": { - "lastModificationDate": 1689947351617, + "lastModificationDate": 1695374870138, "contentHash": "8f8077a3a079d877814bee151a073325", "sourceName": "script/base-goerli/deploy-royalty.s.sol", "solcConfig": { @@ -5519,7 +5519,7 @@ } }, "script/base-goerli/fireblocks/create-publisher.s.sol": { - "lastModificationDate": 1700559566834, + "lastModificationDate": 1700731306948, "contentHash": "e2267180499cb7133e1684156d386c07", "sourceName": "script/base-goerli/fireblocks/create-publisher.s.sol", "solcConfig": { @@ -5704,7 +5704,7 @@ } }, "script/base-goerli/fireblocks/deploy-platform.s.sol": { - "lastModificationDate": 1700559566835, + "lastModificationDate": 1700731306949, "contentHash": "b70d8c3e4c0e87035617d16c5b7ac0f5", "sourceName": "script/base-goerli/fireblocks/deploy-platform.s.sol", "solcConfig": { @@ -5821,7 +5821,7 @@ } }, "script/base-goerli/fireblocks/deploy-royalty.s.sol": { - "lastModificationDate": 1700559566835, + "lastModificationDate": 1700731306950, "contentHash": "8f8077a3a079d877814bee151a073325", "sourceName": "script/base-goerli/fireblocks/deploy-royalty.s.sol", "solcConfig": { @@ -5915,7 +5915,7 @@ } }, "script/goerli/fireblocks/create-publisher.s.sol": { - "lastModificationDate": 1700559566835, + "lastModificationDate": 1700731306950, "contentHash": "e2267180499cb7133e1684156d386c07", "sourceName": "script/goerli/fireblocks/create-publisher.s.sol", "solcConfig": { @@ -6100,7 +6100,7 @@ } }, "script/goerli/fireblocks/deploy-platform.s.sol": { - "lastModificationDate": 1700559566836, + "lastModificationDate": 1700731306950, "contentHash": "f4b11546308bcfa921e15dd8e55ca1b8", "sourceName": "script/goerli/fireblocks/deploy-platform.s.sol", "solcConfig": { @@ -6217,7 +6217,7 @@ } }, "script/goerli/fireblocks/deploy-royalty.s.sol": { - "lastModificationDate": 1700559566836, + "lastModificationDate": 1700731306951, "contentHash": "8f8077a3a079d877814bee151a073325", "sourceName": "script/goerli/fireblocks/deploy-royalty.s.sol", "solcConfig": { @@ -6511,7 +6511,7 @@ } }, "script/op/deploy-royalty.s.sol": { - "lastModificationDate": 1689774928279, + "lastModificationDate": 1695374870139, "contentHash": "bb2815d1b7297d11c82eee3952d59434", "sourceName": "script/op/deploy-royalty.s.sol", "solcConfig": { @@ -6817,8 +6817,8 @@ } }, "src/royalty/ABRoyalty.sol": { - "lastModificationDate": 1700646835822, - "contentHash": "af0659a29b8411c92923c831f4541ade", + "lastModificationDate": 1700731414231, + "contentHash": "4c24e9ce7e19bfddebdc4f680ed5fd4a", "sourceName": "src/royalty/ABRoyalty.sol", "solcConfig": { "settings": { @@ -6986,8 +6986,8 @@ } }, "src/token/ERC721/ERC721AB.sol": { - "lastModificationDate": 1700646892815, - "contentHash": "eba8098d70dbc85feacc66460f42afc7", + "lastModificationDate": 1700731348471, + "contentHash": "6b451e43d2d64f3f3b44305e81c129ce", "sourceName": "src/token/ERC721/ERC721AB.sol", "solcConfig": { "settings": { @@ -7046,7 +7046,7 @@ } }, "src/token/ERC721/ERC721ABLE.sol": { - "lastModificationDate": 1700574280010, + "lastModificationDate": 1700731306954, "contentHash": "d78a8951ac3a3aec7c3973448ae3830c", "sourceName": "src/token/ERC721/ERC721ABLE.sol", "solcConfig": { @@ -7224,8 +7224,8 @@ } }, "src/utils/ABKYCModule.sol": { - "lastModificationDate": 1700646937159, - "contentHash": "fdaf1f57f1b7e5fd3b3f4f584e8006e9", + "lastModificationDate": 1700731414221, + "contentHash": "952daa693fab5b97f1019870c1992446", "sourceName": "src/utils/ABKYCModule.sol", "solcConfig": { "settings": { @@ -7377,8 +7377,8 @@ } }, "src/utils/IABKYCModule.sol": { - "lastModificationDate": 1700646511339, - "contentHash": "510f664aa96296e67b7d2b72c49987bd", + "lastModificationDate": 1700731414220, + "contentHash": "64652c1becafd8332899fbbc689facc2", "sourceName": "src/utils/IABKYCModule.sol", "solcConfig": { "settings": { @@ -8047,7 +8047,7 @@ } }, "test/royalty/ABRoyalty.t.sol": { - "lastModificationDate": 1700646761338, + "lastModificationDate": 1700731306956, "contentHash": "2a17b4a049a2b88bdc4cb3edd899ea27", "sourceName": "test/royalty/ABRoyalty.t.sol", "solcConfig": { @@ -8334,7 +8334,7 @@ } }, "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1700644327821, + "lastModificationDate": 1700731306956, "contentHash": "f2d50bad5a51eea627b673c44e38d776", "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", "solcConfig": { @@ -8477,7 +8477,7 @@ } }, "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1700644316458, + "lastModificationDate": 1700731306957, "contentHash": "62a5f9653b561bb7ff332b990c95143d", "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", "solcConfig": { @@ -8620,8 +8620,8 @@ } }, "test/utils/ABDataRegistry.t.sol": { - "lastModificationDate": 1700648984892, - "contentHash": "5d7f7b52142a593d8d5f2b5782cf6366", + "lastModificationDate": 1700731611129, + "contentHash": "2b2aa187ff01e629eefa966959ea8797", "sourceName": "test/utils/ABDataRegistry.t.sol", "solcConfig": { "settings": { From 5af974a7be9c7236e9e4c41296bd1f5ed868d01b Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Thu, 23 Nov 2023 10:42:07 +0100 Subject: [PATCH 29/74] updated fork settings in unit tests --- forge-cache/solidity-files-cache.json | 12 ++++++------ test/token/ERC1155/ERC1155AB.t.sol | 2 +- test/token/ERC721/ERC721ABLE.t.sol | 2 +- test/token/ERC721/ERC721ABOE.t.sol | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 5742b6c..9c2dd7d 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -8187,8 +8187,8 @@ } }, "test/token/ERC1155/ERC1155AB.t.sol": { - "lastModificationDate": 1699523979386, - "contentHash": "7e601132d94c61b0b8aea76a591768ba", + "lastModificationDate": 1700732462823, + "contentHash": "b5cad67bb845da223db01753b7d2576a", "sourceName": "test/token/ERC1155/ERC1155AB.t.sol", "solcConfig": { "settings": { @@ -8334,8 +8334,8 @@ } }, "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1700731306956, - "contentHash": "f2d50bad5a51eea627b673c44e38d776", + "lastModificationDate": 1700732465535, + "contentHash": "6ec76c76a3f5db94e8a5ce310f84335e", "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", "solcConfig": { "settings": { @@ -8477,8 +8477,8 @@ } }, "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1700731306957, - "contentHash": "62a5f9653b561bb7ff332b990c95143d", + "lastModificationDate": 1700732469200, + "contentHash": "323e4e01f8b61ffd56bcb24f627ae27a", "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", "solcConfig": { "settings": { diff --git a/test/token/ERC1155/ERC1155AB.t.sol b/test/token/ERC1155/ERC1155AB.t.sol index 2251110..0662b58 100644 --- a/test/token/ERC1155/ERC1155AB.t.sol +++ b/test/token/ERC1155/ERC1155AB.t.sol @@ -60,7 +60,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { string BASE_RPC_URL = vm.envString("BASE_RPC"); function setUp() public { - vm.selectFork(vm.createFork(BASE_RPC_URL)); + vm.selectFork(vm.createFork(BASE_RPC_URL, 6900000)); /* Setup admins */ abSigner = vm.addr(abSignerPkey); diff --git a/test/token/ERC721/ERC721ABLE.t.sol b/test/token/ERC721/ERC721ABLE.t.sol index 9019e58..69dc7a8 100644 --- a/test/token/ERC721/ERC721ABLE.t.sol +++ b/test/token/ERC721/ERC721ABLE.t.sol @@ -65,7 +65,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { string BASE_RPC_URL = vm.envString("BASE_RPC"); function setUp() public { - vm.selectFork(vm.createFork(BASE_RPC_URL)); + vm.selectFork(vm.createFork(BASE_RPC_URL, 6900000)); /* Setup admins */ abSigner = vm.addr(abSignerPkey); diff --git a/test/token/ERC721/ERC721ABOE.t.sol b/test/token/ERC721/ERC721ABOE.t.sol index dfce7df..a4bb69e 100644 --- a/test/token/ERC721/ERC721ABOE.t.sol +++ b/test/token/ERC721/ERC721ABOE.t.sol @@ -63,7 +63,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { string BASE_RPC_URL = vm.envString("BASE_RPC"); function setUp() public { - vm.selectFork(vm.createFork(BASE_RPC_URL)); + vm.selectFork(vm.createFork(BASE_RPC_URL, 6900000)); /* Setup admins */ abSigner = vm.addr(abSignerPkey); From 4f0c4c7de7b816b8735d73f6e2983cc4ee855b2e Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Thu, 23 Nov 2023 10:50:32 +0100 Subject: [PATCH 30/74] remove fork block number --- forge-cache/solidity-files-cache.json | 20 ++++++++++---------- test/royalty/ABRoyalty.t.sol | 2 +- test/token/ERC1155/ERC1155AB.t.sol | 2 +- test/token/ERC721/ERC721ABLE.t.sol | 2 +- test/token/ERC721/ERC721ABOE.t.sol | 2 +- test/utils/ABDataRegistry.t.sol | 2 +- 6 files changed, 15 insertions(+), 15 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 9c2dd7d..85599d3 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -8047,8 +8047,8 @@ } }, "test/royalty/ABRoyalty.t.sol": { - "lastModificationDate": 1700731306956, - "contentHash": "2a17b4a049a2b88bdc4cb3edd899ea27", + "lastModificationDate": 1700732835256, + "contentHash": "244b285c08d97f5f87b553ebbde6029f", "sourceName": "test/royalty/ABRoyalty.t.sol", "solcConfig": { "settings": { @@ -8187,8 +8187,8 @@ } }, "test/token/ERC1155/ERC1155AB.t.sol": { - "lastModificationDate": 1700732462823, - "contentHash": "b5cad67bb845da223db01753b7d2576a", + "lastModificationDate": 1700732833055, + "contentHash": "7e601132d94c61b0b8aea76a591768ba", "sourceName": "test/token/ERC1155/ERC1155AB.t.sol", "solcConfig": { "settings": { @@ -8334,8 +8334,8 @@ } }, "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1700732465535, - "contentHash": "6ec76c76a3f5db94e8a5ce310f84335e", + "lastModificationDate": 1700732833049, + "contentHash": "f2d50bad5a51eea627b673c44e38d776", "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", "solcConfig": { "settings": { @@ -8477,8 +8477,8 @@ } }, "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1700732469200, - "contentHash": "323e4e01f8b61ffd56bcb24f627ae27a", + "lastModificationDate": 1700732833038, + "contentHash": "62a5f9653b561bb7ff332b990c95143d", "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", "solcConfig": { "settings": { @@ -8620,8 +8620,8 @@ } }, "test/utils/ABDataRegistry.t.sol": { - "lastModificationDate": 1700731611129, - "contentHash": "2b2aa187ff01e629eefa966959ea8797", + "lastModificationDate": 1700732833036, + "contentHash": "c9efb686599e96d0f106725bb622c2b2", "sourceName": "test/utils/ABDataRegistry.t.sol", "solcConfig": { "settings": { diff --git a/test/royalty/ABRoyalty.t.sol b/test/royalty/ABRoyalty.t.sol index c0d9243..2652a05 100644 --- a/test/royalty/ABRoyalty.t.sol +++ b/test/royalty/ABRoyalty.t.sol @@ -56,7 +56,7 @@ contract ABRoyaltyTest is Test, ABRoyaltyTestData { string public BASE_RPC_URL = vm.envString("BASE_RPC"); function setUp() public { - vm.selectFork(vm.createFork(BASE_RPC_URL, 6900000)); + vm.selectFork(vm.createFork(BASE_RPC_URL)); /* Setup admins */ abSigner = vm.addr(abSignerPkey); diff --git a/test/token/ERC1155/ERC1155AB.t.sol b/test/token/ERC1155/ERC1155AB.t.sol index 0662b58..2251110 100644 --- a/test/token/ERC1155/ERC1155AB.t.sol +++ b/test/token/ERC1155/ERC1155AB.t.sol @@ -60,7 +60,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { string BASE_RPC_URL = vm.envString("BASE_RPC"); function setUp() public { - vm.selectFork(vm.createFork(BASE_RPC_URL, 6900000)); + vm.selectFork(vm.createFork(BASE_RPC_URL)); /* Setup admins */ abSigner = vm.addr(abSignerPkey); diff --git a/test/token/ERC721/ERC721ABLE.t.sol b/test/token/ERC721/ERC721ABLE.t.sol index 69dc7a8..9019e58 100644 --- a/test/token/ERC721/ERC721ABLE.t.sol +++ b/test/token/ERC721/ERC721ABLE.t.sol @@ -65,7 +65,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { string BASE_RPC_URL = vm.envString("BASE_RPC"); function setUp() public { - vm.selectFork(vm.createFork(BASE_RPC_URL, 6900000)); + vm.selectFork(vm.createFork(BASE_RPC_URL)); /* Setup admins */ abSigner = vm.addr(abSignerPkey); diff --git a/test/token/ERC721/ERC721ABOE.t.sol b/test/token/ERC721/ERC721ABOE.t.sol index a4bb69e..dfce7df 100644 --- a/test/token/ERC721/ERC721ABOE.t.sol +++ b/test/token/ERC721/ERC721ABOE.t.sol @@ -63,7 +63,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { string BASE_RPC_URL = vm.envString("BASE_RPC"); function setUp() public { - vm.selectFork(vm.createFork(BASE_RPC_URL, 6900000)); + vm.selectFork(vm.createFork(BASE_RPC_URL)); /* Setup admins */ abSigner = vm.addr(abSignerPkey); diff --git a/test/utils/ABDataRegistry.t.sol b/test/utils/ABDataRegistry.t.sol index f6b0ee7..a010395 100644 --- a/test/utils/ABDataRegistry.t.sol +++ b/test/utils/ABDataRegistry.t.sol @@ -45,7 +45,7 @@ contract ABDataRegistryTest is Test { string public BASE_RPC_URL = vm.envString("BASE_RPC"); function setUp() public { - vm.selectFork(vm.createFork(BASE_RPC_URL, 6900000)); + vm.selectFork(vm.createFork(BASE_RPC_URL)); abTreasury = payable(vm.addr(1000)); publisher = payable(vm.addr(2000)); kycSigner = vm.addr(kycSignerPkey); From cd571b5aa8b286ed6657a93bd9c5c0459c04e6dd Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Mon, 27 Nov 2023 14:19:06 +0100 Subject: [PATCH 31/74] dir prep --- deployment/84531/ABKYCModule/address | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 deployment/84531/ABKYCModule/address diff --git a/deployment/84531/ABKYCModule/address b/deployment/84531/ABKYCModule/address new file mode 100644 index 0000000..e69de29 From 415e3020a4d72fc464452a5dec4aff498da16963 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Mon, 27 Nov 2023 14:22:58 +0100 Subject: [PATCH 32/74] added deploy script --- forge-cache/solidity-files-cache.json | 117 ++++++++++++++++++++ script/base-goerli/deploy-kyc-upgrade.s.sol | 79 +++++++++++++ 2 files changed, 196 insertions(+) create mode 100644 script/base-goerli/deploy-kyc-upgrade.s.sol diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 85599d3..17b9867 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -5201,6 +5201,123 @@ } } }, + "script/base-goerli/deploy-kyc-upgrade.s.sol": { + "lastModificationDate": 1701091363688, + "contentHash": "559c6c819096ca166379a327a22cec6b", + "sourceName": "script/base-goerli/deploy-kyc-upgrade.s.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", + "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/Script.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/access/Ownable.sol", + "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", + "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", + "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/Context.sol", + "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "src/factory/AnotherCloneFactory.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/token/ERC1155/ERC1155AB.sol", + "src/token/ERC721/ERC721AB.sol", + "src/token/ERC721/ERC721ABLE.sol", + "src/token/ERC721/ERC721ABOE.sol", + "src/utils/ABKYCModule.sol", + "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", + "src/utils/IABVerifier.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "DeployKYCUpgrade": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json" + } + } + }, "script/base-goerli/deploy-platform.s.sol": { "lastModificationDate": 1700049426046, "contentHash": "cbacf930a7cb4bf9d8fb6c6666a246aa", diff --git a/script/base-goerli/deploy-kyc-upgrade.s.sol b/script/base-goerli/deploy-kyc-upgrade.s.sol new file mode 100644 index 0000000..88603e1 --- /dev/null +++ b/script/base-goerli/deploy-kyc-upgrade.s.sol @@ -0,0 +1,79 @@ +/* +forge script script/base-goerli/deploy-kyc-upgrade.s.sol --rpc-url base-goerli +forge script script/base-goerli/deploy-kyc-upgrade.s.sol:DeployUpgrade --rpc-url base-goerli --broadcast --verify +*/ + +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +import "forge-std/Script.sol"; + +import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; +import {ProxyAdmin} from "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol"; + +import {ABKYCModule} from "src/utils/ABKYCModule.sol"; +import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; +import {ERC721ABOE} from "src/token/ERC721/ERC721ABOE.sol"; +import {ERC721ABLE} from "src/token/ERC721/ERC721ABLE.sol"; +import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; + +contract DeployKYCUpgrade is Script { + string public constant KYC_MODULE_PATH = "deployment/84531/ABKYCModule/address"; + string public constant PROXY_ADMIN_PATH = "deployment/84531/ProxyAdmin/address"; + + ABRoyalty public abRoyalty; + ERC721ABLE public erc721LimitedEditionImpl; + ProxyAdmin public proxyAdmin; + TransparentUpgradeableProxy public abKycModuleProxy; + + function run(bool isDryRun) external { + // Account to deploy from + uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY"); + + address admin = vm.addr(deployerPrivateKey); + + // Start broadcasting transactions + vm.startBroadcast(deployerPrivateKey); + + // Check if a Proxy Admin has already been deployed + try vm.readFile(PROXY_ADMIN_PATH) returns (string memory proxyAdminAddr) { + proxyAdmin = ProxyAdmin(vm.parseAddress(proxyAdminAddr)); + } catch { + proxyAdmin = new ProxyAdmin(); + if (!isDryRun) { + _writeAddressToFile(address(proxyAdmin), PROXY_ADMIN_PATH); + } + } + + // Deploy ABVerifier + abKycModuleProxy = new TransparentUpgradeableProxy( + address(new ABKYCModule()), + address(proxyAdmin), + abi.encodeWithSelector(ABKYCModule.initialize.selector, admin) + ); + if (!isDryRun) { + _writeAddressToFile(address(abKycModuleProxy), KYC_MODULE_PATH); + } + + // Deploy Implementation Contracts + abRoyalty = new ABRoyalty(); + erc721LimitedEditionImpl = new ERC721ABLE(); + new ERC721ABOE(); + + // Set new implementation contracts addresses in AnotherCloneFactory + AnotherCloneFactory(0x9BE7E2B13f70f170B63c0379663313EcdB527294).setERC721Implementation( + address(erc721LimitedEditionImpl) + ); + + AnotherCloneFactory(0x9BE7E2B13f70f170B63c0379663313EcdB527294).setABRoyaltyImplementation(address(abRoyalty)); + + // Set new implementation contracts addresses in AnotherCloneFactory + AnotherCloneFactory(0x9BE7E2B13f70f170B63c0379663313EcdB527294).setABKYCModule(address(abKycModuleProxy)); + + vm.stopBroadcast(); + } + + function _writeAddressToFile(address _addr, string memory _path) internal { + vm.writeFile(_path, vm.toString(_addr)); + } +} From ecce03232821029a22108202160df6d4a38c532a Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 28 Nov 2023 11:05:17 +0100 Subject: [PATCH 33/74] added KYC integration --- src/token/ERC721/ERC721ABLECoin.sol | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/src/token/ERC721/ERC721ABLECoin.sol b/src/token/ERC721/ERC721ABLECoin.sol index 3ea8e2b..0a3393e 100644 --- a/src/token/ERC721/ERC721ABLECoin.sol +++ b/src/token/ERC721/ERC721ABLECoin.sol @@ -96,8 +96,18 @@ contract ERC721ABLECoin is ERC721AB { * @param _phaseId current minting phase (must be started) * @param _quantity quantity of tokens requested (must be less than max mint per phase) * @param _signature signature to verify allowlist status + * @param _kycSignature signature to verify user's KYC status */ - function mintETH(address _to, uint256 _phaseId, uint256 _quantity, bytes calldata _signature) external payable { + function mintETH( + address _to, + uint256 _phaseId, + uint256 _quantity, + bytes calldata _signature, + bytes calldata _kycSignature + ) external payable { + // Perform before mint checks (KYC verification) + _beforeMint(_to, _kycSignature); + // Check that the requested minting phase has started if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); @@ -138,8 +148,18 @@ contract ERC721ABLECoin is ERC721AB { * @param _phaseId current minting phase (must be started) * @param _quantity quantity of tokens requested (must be less than max mint per phase) * @param _signature signature to verify allowlist status + * @param _kycSignature signature to verify user's KYC status */ - function mintCoin(address _to, uint256 _phaseId, uint256 _quantity, bytes calldata _signature) external { + function mintCoin( + address _to, + uint256 _phaseId, + uint256 _quantity, + bytes calldata _signature, + bytes calldata _kycSignature + ) external { + // Perform before mint checks (KYC verification) + _beforeMint(_to, _kycSignature); + // Check that the requested minting phase has started if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); From 9fc3a2d61fa16351f96d528507f074bbd4d36a59 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 28 Nov 2023 11:05:26 +0100 Subject: [PATCH 34/74] latest coverage --- lcov.info | 1684 +++++++++++++++++++++++++++++++++-------------------- 1 file changed, 1064 insertions(+), 620 deletions(-) diff --git a/lcov.info b/lcov.info index 924951b..289c877 100644 --- a/lcov.info +++ b/lcov.info @@ -50,11 +50,146 @@ BRF:0 BRH:0 end_of_record TN: +SF:script/base-goerli/deploy-kyc-upgrade.s.sol +FN:29,DeployKYCUpgrade.run +FNDA:0,DeployKYCUpgrade.run +DA:31,0 +DA:33,0 +DA:36,0 +DA:39,0 +DA:49,0 +DA:54,0 +BRDA:54,0,0,- +BRDA:54,0,1,- +DA:55,0 +DA:59,0 +DA:60,0 +DA:61,0 +DA:64,0 +DA:68,0 +DA:71,0 +DA:73,0 +FN:76,DeployKYCUpgrade._writeAddressToFile +FNDA:0,DeployKYCUpgrade._writeAddressToFile +DA:77,0 +FNF:2 +FNH:0 +LF:15 +LH:0 +BRF:2 +BRH:0 +end_of_record +TN: SF:script/base-goerli/deploy-platform.s.sol -FN:35,DeployPlatform.run +FN:37,DeployPlatform.run FNDA:0,DeployPlatform.run -DA:37,0 DA:39,0 +DA:41,0 +DA:44,0 +DA:47,0 +DA:48,0 +DA:49,0 +DA:50,0 +DA:53,0 +DA:63,0 +DA:68,0 +BRDA:68,0,0,- +BRDA:68,0,1,- +DA:69,0 +DA:73,0 +DA:78,0 +BRDA:78,1,0,- +BRDA:78,1,1,- +DA:79,0 +DA:83,0 +DA:94,0 +BRDA:94,2,0,- +BRDA:94,2,1,- +DA:95,0 +DA:98,0 +DA:103,0 +DA:105,0 +FN:108,DeployPlatform._writeAddressToFile +FNDA:0,DeployPlatform._writeAddressToFile +DA:109,0 +FNF:2 +FNH:0 +LF:21 +LH:0 +BRF:6 +BRH:0 +end_of_record +TN: +SF:script/base-goerli/deploy-royalty.s.sol +FN:15,DeployRoyalty.run +FNDA:0,DeployRoyalty.run +DA:17,0 +DA:20,0 +DA:21,0 +DA:23,0 +DA:26,0 +DA:32,0 +FNF:1 +FNH:0 +LF:6 +LH:0 +BRF:0 +BRH:0 +end_of_record +TN: +SF:script/base-goerli/deploy-upgrade.s.sol +FN:19,DeployUpgrade.run +FNDA:0,DeployUpgrade.run +DA:21,0 +DA:24,0 +DA:27,0 +DA:30,0 +DA:31,0 +DA:34,0 +DA:38,0 +FNF:1 +FNH:0 +LF:7 +LH:0 +BRF:0 +BRH:0 +end_of_record +TN: +SF:script/base-goerli/fireblocks/create-publisher.s.sol +FN:9,CreatePublisher.run +FNDA:0,CreatePublisher.run +DA:11,0 +DA:13,0 +DA:15,0 +DA:17,0 +DA:19,0 +FNF:1 +FNH:0 +LF:5 +LH:0 +BRF:0 +BRH:0 +end_of_record +TN: +SF:script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol +FN:11,DeployMockSuperToken.run +FNDA:0,DeployMockSuperToken.run +DA:12,0 +DA:14,0 +DA:16,0 +DA:18,0 +DA:20,0 +FNF:1 +FNH:0 +LF:5 +LH:0 +BRF:0 +BRH:0 +end_of_record +TN: +SF:script/base-goerli/fireblocks/deploy-platform.s.sol +FN:40,DeployPlatform.run +FNDA:0,DeployPlatform.run DA:42,0 DA:45,0 DA:46,0 @@ -77,19 +212,20 @@ BRDA:91,2,1,- DA:92,0 DA:95,0 DA:100,0 -DA:102,0 -FN:105,DeployPlatform._writeAddressToFile -FNDA:0,DeployPlatform._writeAddressToFile +DA:104,0 DA:106,0 +FN:109,DeployPlatform._writeAddressToFile +FNDA:0,DeployPlatform._writeAddressToFile +DA:110,0 FNF:2 FNH:0 -LF:20 +LF:19 LH:0 BRF:6 BRH:0 end_of_record TN: -SF:script/base-goerli/deploy-royalty.s.sol +SF:script/base-goerli/fireblocks/deploy-royalty.s.sol FN:15,DeployRoyalty.run FNDA:0,DeployRoyalty.run DA:17,0 @@ -212,6 +348,111 @@ BRF:0 BRH:0 end_of_record TN: +SF:script/base/deploy-v1_1.s.sol +FN:17,DeployUpgrade.run +FNDA:0,DeployUpgrade.run +DA:19,0 +DA:22,0 +DA:25,0 +DA:26,0 +DA:27,0 +DA:28,0 +DA:30,0 +FNF:1 +FNH:0 +LF:7 +LH:0 +BRF:0 +BRH:0 +end_of_record +TN: +SF:script/goerli/fireblocks/create-publisher.s.sol +FN:9,CreatePublisher.run +FNDA:0,CreatePublisher.run +DA:11,0 +DA:13,0 +DA:15,0 +DA:17,0 +DA:19,0 +FNF:1 +FNH:0 +LF:5 +LH:0 +BRF:0 +BRH:0 +end_of_record +TN: +SF:script/goerli/fireblocks/deploy-ABSuperToken.s.sol +FN:11,DeployMockSuperToken.run +FNDA:0,DeployMockSuperToken.run +DA:12,0 +DA:14,0 +DA:16,0 +DA:18,0 +DA:20,0 +FNF:1 +FNH:0 +LF:5 +LH:0 +BRF:0 +BRH:0 +end_of_record +TN: +SF:script/goerli/fireblocks/deploy-platform.s.sol +FN:38,DeployPlatform.run +FNDA:0,DeployPlatform.run +DA:40,0 +DA:43,0 +DA:44,0 +DA:45,0 +DA:48,0 +DA:58,0 +DA:63,0 +BRDA:63,0,0,- +BRDA:63,0,1,- +DA:64,0 +DA:68,0 +DA:73,0 +BRDA:73,1,0,- +BRDA:73,1,1,- +DA:74,0 +DA:78,0 +DA:89,0 +BRDA:89,2,0,- +BRDA:89,2,1,- +DA:90,0 +DA:93,0 +DA:98,0 +DA:102,0 +DA:104,0 +FN:107,DeployPlatform._writeAddressToFile +FNDA:0,DeployPlatform._writeAddressToFile +DA:108,0 +FNF:2 +FNH:0 +LF:19 +LH:0 +BRF:6 +BRH:0 +end_of_record +TN: +SF:script/goerli/fireblocks/deploy-royalty.s.sol +FN:15,DeployRoyalty.run +FNDA:0,DeployRoyalty.run +DA:17,0 +DA:20,0 +DA:21,0 +DA:23,0 +DA:26,0 +DA:32,0 +FNF:1 +FNH:0 +LF:6 +LH:0 +BRF:0 +BRH:0 +end_of_record +TN: SF:script/op/deploy-ABSuperToken.s.sol FN:12,DeployMockSuperToken.run FNDA:0,DeployMockSuperToken.run @@ -284,607 +525,757 @@ BRH:0 end_of_record TN: SF:src/factory/AnotherCloneFactory.sol -FN:115,AnotherCloneFactory.initialize -FNDA:0,AnotherCloneFactory.initialize -DA:122,0 -DA:123,0 -DA:124,0 -DA:125,0 -DA:126,0 -DA:128,0 -DA:131,0 -DA:132,0 -FN:149,AnotherCloneFactory.createCollection721 -FNDA:0,AnotherCloneFactory.createCollection721 -DA:151,0 -DA:154,0 -DA:157,0 -FN:167,AnotherCloneFactory.createCollection1155 -FNDA:0,AnotherCloneFactory.createCollection1155 -DA:169,0 -DA:172,0 -DA:175,0 -FN:195,AnotherCloneFactory.createCollection721FromImplementation -FNDA:0,AnotherCloneFactory.createCollection721FromImplementation -DA:201,0 -BRDA:201,0,0,- -BRDA:201,0,1,- -DA:204,0 -DA:207,0 -DA:210,0 -FN:222,AnotherCloneFactory.createPublisherProfile -FNDA:0,AnotherCloneFactory.createPublisherProfile -DA:227,0 -BRDA:227,1,0,- -BRDA:227,1,1,- -DA:230,0 -BRDA:230,2,0,- -BRDA:230,2,1,- -DA:233,0 -DA:236,0 -FN:247,AnotherCloneFactory.createPublisherProfile -FNDA:0,AnotherCloneFactory.createPublisherProfile -DA:249,0 -BRDA:249,3,0,- -BRDA:249,3,1,- -DA:252,0 -BRDA:252,4,0,- -BRDA:252,4,1,- -DA:255,0 -DA:258,0 -DA:261,0 -DA:264,0 -FN:274,AnotherCloneFactory.revokePublisherAccess -FNDA:0,AnotherCloneFactory.revokePublisherAccess -DA:276,0 -FN:286,AnotherCloneFactory.setERC721Implementation -FNDA:0,AnotherCloneFactory.setERC721Implementation -DA:287,0 -FN:297,AnotherCloneFactory.setERC1155Implementation -FNDA:0,AnotherCloneFactory.setERC1155Implementation -DA:298,0 -FN:308,AnotherCloneFactory.setABRoyaltyImplementation -FNDA:0,AnotherCloneFactory.setABRoyaltyImplementation -DA:309,0 -FN:326,AnotherCloneFactory.predictERC721Address -FNDA:0,AnotherCloneFactory.predictERC721Address -DA:327,0 -FN:338,AnotherCloneFactory.predictERC1155Address -FNDA:0,AnotherCloneFactory.predictERC1155Address -DA:339,0 -FN:350,AnotherCloneFactory.hasPublisherRole -FNDA:0,AnotherCloneFactory.hasPublisherRole -DA:351,0 -FN:359,AnotherCloneFactory._setupCollection -FNDA:0,AnotherCloneFactory._setupCollection -DA:361,0 -DA:364,0 -DA:367,0 -DA:370,0 -FNF:14 -FNH:0 -LF:39 -LH:0 +FN:118,AnotherCloneFactory.initialize +FNDA:182,AnotherCloneFactory.initialize +DA:125,181 +DA:126,181 +DA:127,181 +DA:128,181 +DA:129,181 +DA:131,181 +DA:134,181 +DA:135,181 +FN:152,AnotherCloneFactory.createCollection721 +FNDA:814,AnotherCloneFactory.createCollection721 +DA:154,558 +DA:157,558 +DA:160,558 +FN:170,AnotherCloneFactory.createCollection1155 +FNDA:810,AnotherCloneFactory.createCollection1155 +DA:172,554 +DA:175,554 +DA:178,554 +FN:198,AnotherCloneFactory.createCollection721FromImplementation +FNDA:1062,AnotherCloneFactory.createCollection721FromImplementation +DA:204,806 +BRDA:204,0,0,256 +BRDA:204,0,1,550 +DA:207,550 +DA:210,550 +DA:213,550 +FN:225,AnotherCloneFactory.createPublisherProfile +FNDA:1024,AnotherCloneFactory.createPublisherProfile +DA:230,768 +BRDA:230,1,0,256 +BRDA:230,1,1,512 +DA:233,512 +BRDA:233,2,0,256 +BRDA:233,2,1,256 +DA:236,256 +DA:239,256 +FN:250,AnotherCloneFactory.createPublisherProfile +FNDA:3735,AnotherCloneFactory.createPublisherProfile +DA:252,3479 +BRDA:252,3,0,256 +BRDA:252,3,1,3223 +DA:255,3223 +BRDA:255,4,0,256 +BRDA:255,4,1,2967 +DA:258,2967 +DA:261,2967 +DA:264,2967 +DA:267,2967 +FN:277,AnotherCloneFactory.revokePublisherAccess +FNDA:512,AnotherCloneFactory.revokePublisherAccess +DA:279,256 +FN:289,AnotherCloneFactory.setERC721Implementation +FNDA:257,AnotherCloneFactory.setERC721Implementation +DA:290,1 +FN:300,AnotherCloneFactory.setERC1155Implementation +FNDA:257,AnotherCloneFactory.setERC1155Implementation +DA:301,1 +FN:311,AnotherCloneFactory.setABRoyaltyImplementation +FNDA:257,AnotherCloneFactory.setABRoyaltyImplementation +DA:312,1 +FN:322,AnotherCloneFactory.setABKYCModule +FNDA:109,AnotherCloneFactory.setABKYCModule +DA:323,109 +FN:340,AnotherCloneFactory.predictERC721Address +FNDA:256,AnotherCloneFactory.predictERC721Address +DA:341,256 +FN:352,AnotherCloneFactory.predictERC1155Address +FNDA:256,AnotherCloneFactory.predictERC1155Address +DA:353,256 +FN:365,AnotherCloneFactory.predictAddressFromImplementation +FNDA:256,AnotherCloneFactory.predictAddressFromImplementation +DA:370,256 +FN:382,AnotherCloneFactory.hasPublisherRole +FNDA:512,AnotherCloneFactory.hasPublisherRole +DA:383,512 +FN:391,AnotherCloneFactory._setupCollection +FNDA:1662,AnotherCloneFactory._setupCollection +DA:393,1662 +DA:396,1662 +DA:399,1662 +DA:402,1662 +FNF:16 +FNH:16 +LF:41 +LH:41 BRF:10 -BRH:0 +BRH:10 end_of_record TN: SF:src/royalty/ABRoyalty.sol -FN:105,ABRoyalty.initialize -FNDA:0,ABRoyalty.initialize -DA:107,0 -DA:108,0 -DA:109,0 -DA:110,0 -DA:113,0 -FN:129,ABRoyalty.claimPayout -FNDA:0,ABRoyalty.claimPayout -DA:131,0 -FN:141,ABRoyalty.claimPayouts -FNDA:0,ABRoyalty.claimPayouts -DA:142,0 -DA:143,0 -DA:144,0 -FN:164,ABRoyalty.distribute -FNDA:0,ABRoyalty.distribute -DA:165,0 -BRDA:165,0,0,- -BRDA:165,0,1,- -DA:166,0 -FN:176,ABRoyalty.claimPayoutsOnBehalf -FNDA:0,ABRoyalty.claimPayoutsOnBehalf -DA:178,0 -FN:188,ABRoyalty.claimPayoutsOnBehalf -FNDA:0,ABRoyalty.claimPayoutsOnBehalf -DA:189,0 -DA:190,0 -DA:191,0 -FN:203,ABRoyalty.claimPayoutsOnMultipleBehalf -FNDA:0,ABRoyalty.claimPayoutsOnMultipleBehalf -DA:208,0 -DA:210,0 -FN:222,ABRoyalty.claimPayoutsOnMultipleBehalf -FNDA:0,ABRoyalty.claimPayoutsOnMultipleBehalf -DA:226,0 -DA:227,0 -DA:230,0 -DA:232,0 -DA:234,0 -FN:255,ABRoyalty.initPayoutIndex -FNDA:768,ABRoyalty.initPayoutIndex -DA:259,768 -DA:260,768 -BRDA:260,1,0,- -BRDA:260,1,1,768 -DA:261,0 -DA:263,768 -DA:264,768 -FN:277,ABRoyalty.updatePayout1155 -FNDA:0,ABRoyalty.updatePayout1155 -DA:283,0 -DA:284,0 -BRDA:284,2,0,- -BRDA:284,2,1,- -DA:286,0 -DA:288,0 -DA:291,0 -FN:305,ABRoyalty.updatePayout721 -FNDA:512,ABRoyalty.updatePayout721 -DA:310,512 -DA:313,512 -FN:324,ABRoyalty.distributeOnBehalf +FN:109,ABRoyalty.initialize +FNDA:2996,ABRoyalty.initialize +DA:111,2995 +DA:112,2995 +DA:113,2995 +DA:114,2995 +DA:117,2995 +DA:120,2995 +FN:136,ABRoyalty.claimPayout +FNDA:256,ABRoyalty.claimPayout +DA:137,256 +DA:139,256 +FN:149,ABRoyalty.claimPayouts +FNDA:256,ABRoyalty.claimPayouts +DA:150,256 +DA:152,256 +DA:153,256 +DA:154,512 +FN:174,ABRoyalty.distribute +FNDA:3072,ABRoyalty.distribute +DA:175,3072 +BRDA:175,0,0,- +BRDA:175,0,1,2560 +DA:176,3072 +FN:186,ABRoyalty.claimPayoutsOnBehalf +FNDA:256,ABRoyalty.claimPayoutsOnBehalf +DA:190,256 +DA:193,256 +FN:203,ABRoyalty.claimPayoutsOnBehalf +FNDA:256,ABRoyalty.claimPayoutsOnBehalf +DA:207,256 +DA:209,256 +DA:210,256 +DA:211,512 +FN:224,ABRoyalty.claimPayoutsOnMultipleBehalf +FNDA:256,ABRoyalty.claimPayoutsOnMultipleBehalf +DA:228,256 +DA:229,256 +DA:231,256 +BRDA:231,1,0,- +BRDA:231,1,1,256 +DA:234,256 +DA:235,512 +DA:238,512 +FN:251,ABRoyalty.claimPayoutsOnMultipleBehalf +FNDA:256,ABRoyalty.claimPayoutsOnMultipleBehalf +DA:256,256 +DA:257,256 +DA:258,256 +DA:260,256 +BRDA:260,2,0,- +BRDA:260,2,1,256 +DA:263,256 +DA:264,512 +DA:267,512 +DA:269,1024 +FN:290,ABRoyalty.initPayoutIndex +FNDA:9046,ABRoyalty.initPayoutIndex +DA:294,8790 +DA:295,8790 +BRDA:295,3,0,- +BRDA:295,3,1,8790 +DA:296,0 +DA:298,8790 +DA:299,8790 +FN:312,ABRoyalty.updatePayout1155 +FNDA:1845,ABRoyalty.updatePayout1155 +DA:318,1589 +DA:319,1589 +BRDA:319,4,0,256 +BRDA:319,4,1,1333 +DA:321,1333 +DA:323,2617 +DA:326,2617 +FN:340,ABRoyalty.updatePayout721 +FNDA:9255,ABRoyalty.updatePayout721 +DA:345,8999 +DA:348,8999 +FN:359,ABRoyalty.distributeOnBehalf FNDA:256,ABRoyalty.distributeOnBehalf -DA:325,256 -FN:343,ABRoyalty.getUserSubscription -FNDA:0,ABRoyalty.getUserSubscription -DA:345,0 -FN:357,ABRoyalty.getClaimableAmount +DA:360,256 +FN:378,ABRoyalty.getUserSubscription +FNDA:5632,ABRoyalty.getUserSubscription +DA:380,5632 +FN:392,ABRoyalty.getClaimableAmount FNDA:256,ABRoyalty.getClaimableAmount -DA:359,256 -FN:372,ABRoyalty.getIndexInfo -FNDA:0,ABRoyalty.getIndexInfo -DA:377,0 -FN:395,ABRoyalty._gainShare -FNDA:512,ABRoyalty._gainShare -DA:397,512 -BRDA:397,3,0,512 -BRDA:397,3,1,512 -DA:400,512 -DA:401,512 -DA:404,512 -FN:417,ABRoyalty._loseShare -FNDA:512,ABRoyalty._loseShare -DA:419,512 -BRDA:419,4,0,- -BRDA:419,4,1,512 -DA:422,0 -DA:423,0 -DA:426,0 -BRDA:426,5,0,- -BRDA:426,5,1,- -DA:428,0 -DA:431,0 -FN:444,ABRoyalty._distribute -FNDA:256,ABRoyalty._distribute -DA:446,256 -DA:447,256 -DA:450,256 -DA:453,256 -FN:463,ABRoyalty._claimPayout -FNDA:0,ABRoyalty._claimPayout -DA:465,0 -FNF:19 -FNH:7 -LF:53 -LH:17 -BRF:12 -BRH:4 +DA:394,256 +FN:407,ABRoyalty.getIndexInfo +FNDA:256,ABRoyalty.getIndexInfo +DA:412,256 +FN:430,ABRoyalty._gainShare +FNDA:11616,ABRoyalty._gainShare +DA:432,11616 +BRDA:432,5,0,10848 +BRDA:432,5,1,11616 +DA:435,10848 +DA:436,10848 +DA:439,10848 +FN:452,ABRoyalty._loseShare +FNDA:11616,ABRoyalty._loseShare +DA:454,11616 +BRDA:454,6,0,1792 +BRDA:454,6,1,11616 +DA:457,1792 +DA:458,1792 +DA:461,1792 +BRDA:461,7,0,1536 +BRDA:461,7,1,256 +DA:463,1536 +DA:466,256 +FN:479,ABRoyalty._distribute +FNDA:3328,ABRoyalty._distribute +DA:481,3328 +DA:482,3328 +DA:485,3328 +DA:488,3072 +FN:498,ABRoyalty._claimPayout +FNDA:3072,ABRoyalty._claimPayout +DA:500,3072 +FN:503,ABRoyalty._beforeClaim +FNDA:2048,ABRoyalty._beforeClaim +DA:504,2048 +FNF:20 +FNH:20 +LF:66 +LH:65 +BRF:16 +BRH:12 end_of_record TN: SF:src/token/ERC1155/ERC1155AB.sol FN:103,ERC1155AB.initialize -FNDA:0,ERC1155AB.initialize -DA:105,0 -DA:108,0 -DA:109,0 -DA:112,0 -DA:115,0 -DA:118,0 -DA:121,0 +FNDA:556,ERC1155AB.initialize +DA:105,555 +DA:108,555 +DA:109,555 +DA:112,555 +DA:115,555 +DA:118,555 +DA:121,555 FN:137,ERC1155AB.mint -FNDA:0,ERC1155AB.mint -DA:139,0 -DA:142,0 -BRDA:142,0,0,- -BRDA:142,0,1,- -DA:145,0 -DA:148,0 -BRDA:148,1,0,- -BRDA:148,1,1,- -DA:151,0 -BRDA:151,2,0,- -BRDA:151,2,1,- -DA:152,0 -DA:156,0 -BRDA:156,3,0,- -BRDA:156,3,1,- -DA:159,0 -BRDA:158,4,0,- -BRDA:158,4,1,- -DA:163,0 -DA:168,0 -BRDA:168,5,0,- -BRDA:168,5,1,- -DA:169,0 -DA:173,0 -BRDA:173,6,0,- -BRDA:173,6,1,- -DA:174,0 -DA:178,0 -DA:181,0 -DA:184,0 +FNDA:13,ERC1155AB.mint +DA:139,13 +DA:142,13 +BRDA:142,0,0,1 +BRDA:142,0,1,12 +DA:145,12 +DA:148,12 +BRDA:148,1,0,1 +BRDA:148,1,1,10 +DA:151,10 +BRDA:151,2,0,2 +BRDA:151,2,1,8 +DA:152,2 +DA:156,8 +BRDA:156,3,0,1 +BRDA:156,3,1,6 +DA:159,7 +BRDA:158,4,0,1 +BRDA:158,4,1,6 +DA:163,1 +DA:168,7 +BRDA:168,5,0,1 +BRDA:168,5,1,6 +DA:169,1 +DA:173,6 +BRDA:173,6,0,2 +BRDA:173,6,1,4 +DA:174,2 +DA:178,4 +DA:181,4 +DA:184,4 FN:194,ERC1155AB.mintBatch -FNDA:0,ERC1155AB.mintBatch -DA:195,0 -DA:197,0 -DA:198,0 -DA:200,0 -DA:202,0 -DA:204,0 -DA:206,0 -DA:209,0 -BRDA:209,7,0,- -BRDA:209,7,1,- -DA:212,0 -DA:215,0 -BRDA:215,8,0,- -BRDA:215,8,1,- -DA:218,0 -BRDA:218,9,0,- -BRDA:218,9,1,- -DA:219,0 -DA:223,0 -BRDA:223,10,0,- -BRDA:223,10,1,- -DA:226,0 -BRDA:225,11,0,- -BRDA:225,11,1,- -DA:230,0 -DA:235,0 -BRDA:234,12,0,- -BRDA:234,12,1,- -DA:238,0 -DA:242,0 -DA:245,0 -DA:248,0 -DA:251,0 -DA:252,0 -DA:256,0 -BRDA:256,13,0,- -BRDA:256,13,1,- -DA:257,0 -DA:259,0 +FNDA:8,ERC1155AB.mintBatch +DA:195,8 +DA:197,8 +DA:198,8 +DA:200,8 +DA:202,8 +DA:204,8 +DA:206,14 +DA:209,14 +BRDA:209,7,0,1 +BRDA:209,7,1,13 +DA:212,13 +DA:215,13 +BRDA:215,8,0,1 +BRDA:215,8,1,12 +DA:218,12 +BRDA:218,9,0,1 +BRDA:218,9,1,11 +DA:219,1 +DA:223,11 +BRDA:223,10,0,1 +BRDA:223,10,1,10 +DA:226,11 +BRDA:225,11,0,1 +BRDA:225,11,1,10 +DA:230,1 +DA:235,10 +BRDA:234,12,0,1 +BRDA:234,12,1,9 +DA:238,1 +DA:242,9 +DA:245,9 +DA:248,9 +DA:251,9 +DA:252,9 +DA:256,3 +BRDA:256,13,0,1 +BRDA:256,13,1,2 +DA:257,1 +DA:259,2 FN:276,ERC1155AB.initDrop -FNDA:0,ERC1155AB.initDrop -DA:277,0 +FNDA:22,ERC1155AB.initDrop +DA:277,21 FN:287,ERC1155AB.initDrop -FNDA:0,ERC1155AB.initDrop -DA:288,0 -DA:290,0 -DA:291,0 +FNDA:11,ERC1155AB.initDrop +DA:288,10 +DA:290,10 +DA:291,30 FN:303,ERC1155AB.setDropPhases -FNDA:0,ERC1155AB.setDropPhases -DA:305,0 -DA:307,0 -DA:309,0 -DA:310,0 -DA:311,0 -DA:314,0 -BRDA:314,14,0,- -BRDA:314,14,1,- -DA:315,0 -DA:319,0 -DA:320,0 -DA:324,0 -DA:326,0 +FNDA:31,ERC1155AB.setDropPhases +DA:305,30 +DA:307,30 +DA:309,30 +DA:310,30 +DA:311,33 +DA:314,33 +BRDA:314,14,0,1 +BRDA:314,14,1,32 +DA:315,1 +DA:319,32 +DA:320,32 +DA:324,29 +DA:326,29 FN:335,ERC1155AB.withdrawToRightholder -FNDA:0,ERC1155AB.withdrawToRightholder -DA:336,0 -DA:338,0 -BRDA:338,15,0,- -BRDA:338,15,1,- -DA:340,0 -DA:341,0 -DA:342,0 -DA:344,0 +FNDA:1280,ERC1155AB.withdrawToRightholder +DA:336,1024 +DA:338,1024 +BRDA:338,15,0,256 +BRDA:338,15,1,768 +DA:340,768 +DA:341,768 +DA:342,768 +DA:344,768 BRDA:344,16,0,- -BRDA:344,16,1,- -DA:345,0 -DA:346,0 +BRDA:344,16,1,512 +DA:345,512 +DA:346,512 BRDA:346,17,0,- -BRDA:346,17,1,- -DA:349,0 +BRDA:346,17,1,512 +DA:349,768 BRDA:349,18,0,- -BRDA:349,18,1,- -DA:350,0 -DA:351,0 +BRDA:349,18,1,512 +DA:350,512 +DA:351,512 BRDA:351,19,0,- -BRDA:351,19,1,- +BRDA:351,19,1,512 FN:363,ERC1155AB.withdrawERC20 -FNDA:0,ERC1155AB.withdrawERC20 -DA:365,0 +FNDA:257,ERC1155AB.withdrawERC20 +DA:365,1 FN:377,ERC1155AB.setTokenURI -FNDA:0,ERC1155AB.setTokenURI -DA:378,0 +FNDA:2,ERC1155AB.setTokenURI +DA:378,1 FN:389,ERC1155AB.setMaxSupply -FNDA:0,ERC1155AB.setMaxSupply -DA:390,0 -BRDA:390,20,0,- -BRDA:390,20,1,- -DA:391,0 +FNDA:2,ERC1155AB.setMaxSupply +DA:390,2 +BRDA:390,20,0,1 +BRDA:390,20,1,1 +DA:391,1 FN:408,ERC1155AB.uri -FNDA:0,ERC1155AB.uri -DA:409,0 +FNDA:2,ERC1155AB.uri +DA:409,2 FN:421,ERC1155AB.getPhaseInfo -FNDA:0,ERC1155AB.getPhaseInfo -DA:422,0 +FNDA:4,ERC1155AB.getPhaseInfo +DA:422,4 FN:425,ERC1155AB.supportsInterface FNDA:0,ERC1155AB.supportsInterface DA:426,0 FN:441,ERC1155AB._initDrop -FNDA:0,ERC1155AB._initDrop -DA:444,0 -BRDA:443,21,0,- -BRDA:443,21,1,- -DA:446,0 -DA:448,0 -DA:451,0 -DA:454,0 -DA:457,0 -DA:460,0 -DA:463,0 -DA:466,0 -BRDA:466,22,0,- -BRDA:466,22,1,- -DA:468,0 -BRDA:468,23,0,- -BRDA:468,23,1,- -DA:471,0 -DA:474,0 -DA:478,0 +FNDA:51,ERC1155AB._initDrop +DA:444,51 +BRDA:443,21,0,2 +BRDA:443,21,1,49 +DA:446,2 +DA:448,49 +DA:451,49 +DA:454,49 +DA:457,49 +DA:460,49 +DA:463,49 +DA:466,49 +BRDA:466,22,0,1 +BRDA:466,22,1,47 +DA:468,48 +BRDA:468,23,0,1 +BRDA:468,23,1,47 +DA:471,47 +DA:474,47 +DA:478,48 FN:489,ERC1155AB._isPhaseActive -FNDA:0,ERC1155AB._isPhaseActive -DA:491,0 -BRDA:491,24,0,- -BRDA:491,24,1,- -DA:494,0 +FNDA:25,ERC1155AB._isPhaseActive +DA:491,25 +BRDA:491,24,0,1 +BRDA:491,24,1,24 +DA:494,24 FN:497,ERC1155AB._beforeTokenTransfer -FNDA:0,ERC1155AB._beforeTokenTransfer -DA:505,0 -DA:506,0 -DA:509,0 -DA:510,0 -BRDA:510,25,0,- -BRDA:510,25,1,- -DA:514,0 -DA:515,0 -DA:517,0 -DA:520,0 -DA:521,0 +FNDA:53,ERC1155AB._beforeTokenTransfer +DA:505,53 +DA:506,53 +DA:509,53 +DA:510,57 +BRDA:510,25,0,57 +BRDA:510,25,1,57 +DA:514,53 +DA:515,53 +DA:517,53 +DA:520,53 +DA:521,57 BRDA:521,26,0,- -BRDA:521,26,1,- -DA:522,0 -DA:523,0 -DA:524,0 -DA:527,0 +BRDA:521,26,1,57 +DA:522,57 +DA:523,57 +DA:524,57 +DA:527,53 FNF:16 -FNH:0 +FNH:15 LF:109 -LH:0 +LH:108 BRF:54 -BRH:0 +BRH:49 end_of_record TN: SF:src/token/ERC721/ERC721AB.sol FN:116,ERC721AB.initialize -FNDA:0,ERC721AB.initialize -DA:122,0 -DA:125,0 -DA:126,0 -DA:128,0 -DA:131,0 -DA:134,0 -DA:137,0 -FN:155,ERC721AB.mint -FNDA:0,ERC721AB.mint +FNDA:1112,ERC721AB.initialize +DA:124,1110 +DA:127,1110 +DA:128,1110 +DA:130,1110 +DA:133,1110 +DA:136,1110 +DA:139,1110 +DA:142,1110 +FN:159,ERC721AB.setBaseURI +FNDA:4,ERC721AB.setBaseURI +DA:160,2 +FN:170,ERC721AB.setSharePerToken +FNDA:1024,ERC721AB.setSharePerToken +DA:171,512 +FN:182,ERC721AB.setDropPhases +FNDA:29,ERC721AB.setDropPhases +DA:184,27 +BRDA:184,0,0,4 +BRDA:184,0,1,27 +DA:185,4 +DA:188,27 +DA:190,27 +DA:192,27 +DA:193,41 +DA:196,41 +BRDA:196,1,0,2 +BRDA:196,1,1,39 +DA:197,2 +DA:200,39 +DA:201,39 +DA:204,25 +FN:213,ERC721AB.withdrawToRightholder +FNDA:3072,ERC721AB.withdrawToRightholder +DA:214,2560 +DA:216,2560 +BRDA:216,2,0,512 +BRDA:216,2,1,2048 +DA:218,2048 +DA:219,2048 +DA:220,2048 +DA:222,2048 +BRDA:222,3,0,- +BRDA:222,3,1,1280 +DA:223,1280 +DA:224,1280 +BRDA:224,4,0,- +BRDA:224,4,1,1280 +DA:227,2048 +BRDA:227,5,0,- +BRDA:227,5,1,1280 +DA:228,1280 +DA:229,1280 +BRDA:229,6,0,- +BRDA:229,6,1,1280 +FN:241,ERC721AB.withdrawERC20 +FNDA:514,ERC721AB.withdrawERC20 +DA:243,2 +FN:252,ERC721AB.supportsInterface +FNDA:0,ERC721AB.supportsInterface +DA:253,0 +FN:262,ERC721AB.symbol +FNDA:4,ERC721AB.symbol +DA:263,4 +BRDA:263,7,0,2 +BRDA:263,7,1,4 +DA:264,2 +FN:276,ERC721AB.tokenURI +FNDA:16,ERC721AB.tokenURI +DA:277,16 +BRDA:277,8,0,2 +BRDA:277,8,1,14 +DA:279,14 +DA:281,14 +BRDA:281,9,0,2 +BRDA:281,9,1,12 +DA:282,2 +DA:284,12 +DA:286,12 +DA:287,12 +DA:289,12 +BRDA:289,10,0,10 +BRDA:289,10,1,2 +DA:290,10 +DA:292,2 +FN:314,ERC721AB._initDrop +FNDA:1581,ERC721AB._initDrop +DA:322,1581 +BRDA:322,11,0,2 +BRDA:322,11,1,1579 +DA:326,1579 +BRDA:325,12,0,4 +BRDA:325,12,1,1575 +DA:328,4 +DA:331,1575 +DA:334,1575 +DA:337,1575 +DA:340,1575 +BRDA:340,13,0,1571 +BRDA:340,13,1,1575 +DA:341,1571 +FN:353,ERC721AB._isPhaseActive +FNDA:19,ERC721AB._isPhaseActive +DA:355,19 +BRDA:355,14,0,2 +BRDA:355,14,1,17 +DA:356,17 +DA:358,17 +FN:367,ERC721AB._baseURI +FNDA:14,ERC721AB._baseURI +DA:368,14 +FN:377,ERC721AB._startTokenId +FNDA:1138,ERC721AB._startTokenId +DA:378,1138 +FN:381,ERC721AB._beforeMint +FNDA:19,ERC721AB._beforeMint +DA:382,19 +FN:385,ERC721AB._beforeTokenTransfers +FNDA:1577,ERC721AB._beforeTokenTransfers +DA:389,1577 +BRDA:389,15,0,- +BRDA:389,15,1,1575 +DA:390,1575 +FNF:15 +FNH:14 +LF:62 +LH:61 +BRF:32 +BRH:27 +end_of_record +TN: +SF:src/token/ERC721/ERC721ABLE.sol +FN:77,ERC721ABLE.mint +FNDA:12,ERC721ABLE.mint +DA:85,12 +DA:88,12 +BRDA:88,0,0,1 +BRDA:88,0,1,10 +DA:91,10 +DA:94,10 +BRDA:94,1,0,2 +BRDA:94,1,1,8 +DA:95,2 +DA:99,8 +BRDA:99,2,0,1 +BRDA:99,2,1,6 +DA:101,7 +BRDA:101,3,0,1 +BRDA:101,3,1,6 +DA:102,1 +DA:107,7 +BRDA:107,4,0,1 +BRDA:107,4,1,6 +DA:110,6 +BRDA:110,5,0,2 +BRDA:110,5,1,4 +DA:113,4 +DA:116,4 +FN:138,ERC721ABLE.initDrop +FNDA:1051,ERC721ABLE.initDrop +DA:147,1050 +DA:148,1050 +BRDA:148,6,0,1 +BRDA:148,6,1,1049 +DA:150,1049 +FN:160,ERC721ABLE.setMaxSupply +FNDA:2,ERC721ABLE.setMaxSupply +DA:161,2 +BRDA:161,7,0,1 +BRDA:161,7,1,1 +DA:162,1 +FNF:3 +FNH:3 +LF:17 +LH:17 +BRF:16 +BRH:16 +end_of_record +TN: +SF:src/token/ERC721/ERC721ABLECoin.sol +FN:100,ERC721ABLECoin.mintETH +FNDA:0,ERC721ABLECoin.mintETH +DA:102,0 +BRDA:102,0,0,- +BRDA:102,0,1,- +DA:105,0 +DA:108,0 +BRDA:108,1,0,- +BRDA:108,1,1,- +DA:109,0 +DA:113,0 +BRDA:113,2,0,- +BRDA:113,2,1,- +DA:115,0 +BRDA:115,3,0,- +BRDA:115,3,1,- +DA:116,0 +DA:121,0 +BRDA:121,4,0,- +BRDA:121,4,1,- +DA:124,0 +BRDA:124,5,0,- +BRDA:124,5,1,- +DA:127,0 +DA:130,0 +FN:142,ERC721ABLECoin.mintCoin +FNDA:0,ERC721ABLECoin.mintCoin +DA:144,0 +BRDA:144,6,0,- +BRDA:144,6,1,- +DA:147,0 +DA:150,0 +BRDA:150,7,0,- +BRDA:150,7,1,- +DA:151,0 +DA:155,0 +BRDA:155,8,0,- +BRDA:155,8,1,- DA:157,0 -BRDA:157,0,0,- -BRDA:157,0,1,- -DA:160,0 +BRDA:157,9,0,- +BRDA:157,9,1,- +DA:158,0 DA:163,0 -BRDA:163,1,0,- -BRDA:163,1,1,- -DA:164,0 -DA:168,0 -BRDA:168,2,0,- -BRDA:168,2,1,- +BRDA:163,10,0,- +BRDA:163,10,1,- +DA:165,0 +BRDA:165,11,0,- +BRDA:165,11,1,- +DA:166,0 DA:170,0 -BRDA:170,3,0,- -BRDA:170,3,1,- -DA:171,0 -DA:176,0 -BRDA:176,4,0,- -BRDA:176,4,1,- -DA:179,0 -BRDA:179,5,0,- -BRDA:179,5,1,- -DA:182,0 -DA:185,0 -FN:207,ERC721AB.initDrop -FNDA:0,ERC721AB.initDrop +DA:173,0 +FN:196,ERC721ABLECoin.initDrop +FNDA:0,ERC721ABLECoin.initDrop +DA:207,0 +DA:210,0 +DA:213,0 +DA:214,0 +BRDA:214,12,0,- +BRDA:214,12,1,- DA:216,0 -BRDA:216,6,0,- -BRDA:216,6,1,- -DA:220,0 -BRDA:219,7,0,- -BRDA:219,7,1,- -DA:222,0 -DA:225,0 +FN:226,ERC721ABLECoin.setMaxSupply +FNDA:0,ERC721ABLECoin.setMaxSupply +DA:227,0 +BRDA:227,13,0,- +BRDA:227,13,1,- DA:228,0 -DA:231,0 -DA:234,0 -DA:237,0 -BRDA:237,8,0,- -BRDA:237,8,1,- -DA:238,0 -BRDA:238,9,0,- -BRDA:238,9,1,- -DA:239,0 -FN:250,ERC721AB.setBaseURI -FNDA:0,ERC721AB.setBaseURI -DA:251,0 -FN:261,ERC721AB.setSharePerToken -FNDA:0,ERC721AB.setSharePerToken -DA:262,0 -FN:273,ERC721AB.setDropPhases -FNDA:0,ERC721AB.setDropPhases -DA:275,0 -BRDA:275,10,0,- -BRDA:275,10,1,- -DA:276,0 -DA:279,0 -DA:281,0 -DA:283,0 -DA:284,0 -DA:287,0 -BRDA:287,11,0,- -BRDA:287,11,1,- -DA:288,0 -DA:291,0 -DA:292,0 -DA:295,0 -FN:304,ERC721AB.withdrawToRightholder -FNDA:0,ERC721AB.withdrawToRightholder -DA:305,0 -DA:307,0 -BRDA:307,12,0,- -BRDA:307,12,1,- -DA:309,0 -DA:310,0 -DA:311,0 -DA:313,0 -BRDA:313,13,0,- -BRDA:313,13,1,- -DA:314,0 -DA:315,0 -BRDA:315,14,0,- -BRDA:315,14,1,- -DA:318,0 -BRDA:318,15,0,- -BRDA:318,15,1,- -DA:319,0 -DA:320,0 -BRDA:320,16,0,- -BRDA:320,16,1,- -FN:332,ERC721AB.withdrawERC20 -FNDA:0,ERC721AB.withdrawERC20 -DA:334,0 -FN:344,ERC721AB.setMaxSupply -FNDA:0,ERC721AB.setMaxSupply -DA:345,0 -BRDA:345,17,0,- -BRDA:345,17,1,- -DA:346,0 -FN:355,ERC721AB.supportsInterface -FNDA:0,ERC721AB.supportsInterface -DA:356,0 -FN:365,ERC721AB.symbol -FNDA:0,ERC721AB.symbol -DA:366,0 -BRDA:366,18,0,- -BRDA:366,18,1,- -DA:367,0 -FN:379,ERC721AB.tokenURI -FNDA:0,ERC721AB.tokenURI -DA:380,0 -BRDA:380,19,0,- -BRDA:380,19,1,- -DA:382,0 -DA:384,0 -BRDA:384,20,0,- -BRDA:384,20,1,- -DA:385,0 -DA:387,0 -DA:389,0 -DA:390,0 -DA:392,0 -BRDA:392,21,0,- -BRDA:392,21,1,- -DA:393,0 -DA:395,0 -FN:414,ERC721AB._isPhaseActive -FNDA:0,ERC721AB._isPhaseActive -DA:416,0 -BRDA:416,22,0,- -BRDA:416,22,1,- -DA:417,0 -DA:419,0 -FN:428,ERC721AB._baseURI -FNDA:0,ERC721AB._baseURI -DA:429,0 -FN:438,ERC721AB._startTokenId -FNDA:0,ERC721AB._startTokenId -DA:439,0 -FN:442,ERC721AB._beforeTokenTransfers -FNDA:0,ERC721AB._beforeTokenTransfers -DA:446,0 -BRDA:446,23,0,- -BRDA:446,23,1,- -DA:447,0 -FNF:16 +FNF:4 FNH:0 -LF:75 +LF:30 LH:0 -BRF:48 +BRF:28 BRH:0 end_of_record TN: +SF:src/token/ERC721/ERC721ABOE.sol +FN:74,ERC721ABOE.mint +FNDA:7,ERC721ABOE.mint +DA:82,7 +BRDA:82,0,0,- +BRDA:82,0,1,7 +DA:85,7 +DA:88,7 +BRDA:88,1,0,1 +BRDA:88,1,1,5 +DA:91,5 +DA:94,5 +BRDA:94,2,0,1 +BRDA:94,2,1,3 +DA:96,4 +BRDA:96,3,0,1 +BRDA:96,3,1,3 +DA:97,1 +DA:102,4 +BRDA:102,4,0,2 +BRDA:102,4,1,2 +DA:105,2 +FN:126,ERC721ABOE.initDrop +FNDA:533,ERC721ABOE.initDrop +DA:133,532 +FNF:2 +FNH:2 +LF:10 +LH:10 +BRF:10 +BRH:9 +end_of_record +TN: SF:src/utils/ABDataRegistry.sol FN:110,ABDataRegistry.initialize -FNDA:2,ABDataRegistry.initialize -DA:112,1 -DA:113,1 -DA:115,1 -DA:116,1 -DA:118,1 +FNDA:209,ABDataRegistry.initialize +DA:112,208 +DA:113,208 +DA:115,208 +DA:116,208 +DA:118,208 FN:139,ABDataRegistry.registerDrop -FNDA:1280,ABDataRegistry.registerDrop -DA:145,1024 -DA:148,1024 -DA:151,1024 -DA:153,1024 +FNDA:2904,ABDataRegistry.registerDrop +DA:145,2648 +DA:148,2648 +DA:151,2648 +DA:153,2648 BRDA:153,0,0,- -BRDA:153,0,1,768 -DA:155,768 +BRDA:153,0,1,2390 +DA:155,2390 FN:170,ABDataRegistry.on721TokenTransfer -FNDA:512,ABDataRegistry.on721TokenTransfer -DA:174,512 -DA:175,512 +FNDA:2087,ABDataRegistry.on721TokenTransfer +DA:174,2087 +DA:175,2087 FN:190,ABDataRegistry.on1155TokenTransfer -FNDA:0,ABDataRegistry.on1155TokenTransfer -DA:197,0 -DA:198,0 +FNDA:53,ABDataRegistry.on1155TokenTransfer +DA:197,53 +DA:198,53 FN:218,ABDataRegistry.registerPublisher -FNDA:3840,ABDataRegistry.registerPublisher -DA:222,3584 +FNDA:7063,ABDataRegistry.registerPublisher +DA:222,6807 BRDA:222,1,0,256 -BRDA:222,1,1,3328 -DA:225,3328 -DA:228,3328 -DA:231,3328 +BRDA:222,1,1,6551 +DA:225,6551 +DA:228,6551 +DA:231,6551 FN:242,ABDataRegistry.grantCollectionRole -FNDA:512,ABDataRegistry.grantCollectionRole -DA:244,256 +FNDA:2174,ABDataRegistry.grantCollectionRole +DA:244,1918 FN:263,ABDataRegistry.distributeOnBehalf FNDA:768,ABDataRegistry.distributeOnBehalf DA:267,512 @@ -893,19 +1284,19 @@ BRDA:268,2,0,256 BRDA:268,2,1,256 DA:269,256 FN:279,ABDataRegistry.setTreasury -FNDA:512,ABDataRegistry.setTreasury -DA:280,256 +FNDA:1280,ABDataRegistry.setTreasury +DA:280,1024 FN:291,ABDataRegistry.setPublisherFee -FNDA:256,ABDataRegistry.setPublisherFee -DA:292,256 -DA:293,256 +FNDA:1792,ABDataRegistry.setPublisherFee +DA:292,1792 +DA:293,1792 FN:305,ABDataRegistry.setDropFee -FNDA:0,ABDataRegistry.setDropFee -DA:306,0 -BRDA:306,3,0,- -BRDA:306,3,1,- -DA:307,0 -DA:308,0 +FNDA:1536,ABDataRegistry.setDropFee +DA:306,1280 +BRDA:306,3,0,256 +BRDA:306,3,1,1024 +DA:307,1024 +DA:308,1024 FN:319,ABDataRegistry.updatePublisher FNDA:768,ABDataRegistry.updatePublisher DA:320,512 @@ -913,8 +1304,8 @@ BRDA:320,4,0,256 BRDA:320,4,1,256 DA:321,256 FN:338,ABDataRegistry.isPublisher -FNDA:512,ABDataRegistry.isPublisher -DA:339,512 +FNDA:1318,ABDataRegistry.isPublisher +DA:339,1318 FN:350,ABDataRegistry.getRoyaltyContract FNDA:512,ABDataRegistry.getRoyaltyContract DA:351,512 @@ -922,72 +1313,125 @@ FN:362,ABDataRegistry.getPublisherFee FNDA:512,ABDataRegistry.getPublisherFee DA:363,512 FN:376,ABDataRegistry.getPayoutDetails -FNDA:256,ABDataRegistry.getPayoutDetails -DA:381,256 -BRDA:381,5,0,- -BRDA:381,5,1,256 -DA:382,0 -DA:384,256 -DA:386,256 +FNDA:4096,ABDataRegistry.getPayoutDetails +DA:381,4096 +BRDA:381,5,0,768 +BRDA:381,5,1,3328 +DA:382,768 +DA:384,3328 +DA:386,4096 FN:401,ABDataRegistry._getNextDropId -FNDA:1024,ABDataRegistry._getNextDropId -DA:402,1024 +FNDA:2648,ABDataRegistry._getNextDropId +DA:402,2648 FNF:16 -FNH:14 +FNH:16 LF:38 -LH:32 +LH:38 BRF:12 -BRH:8 +BRH:11 +end_of_record +TN: +SF:src/utils/ABKYCModule.sol +FN:94,ABKYCModule.initialize +FNDA:136,ABKYCModule.initialize +DA:95,136 +BRDA:95,0,0,- +BRDA:95,0,1,136 +DA:96,136 +DA:99,136 +DA:100,136 +FN:116,ABKYCModule.beforeMint +FNDA:19,ABKYCModule.beforeMint +FN:131,ABKYCModule.beforeTransfer +FNDA:0,ABKYCModule.beforeTransfer +FN:140,ABKYCModule.beforeRoyaltyClaim +FNDA:2048,ABKYCModule.beforeRoyaltyClaim +FN:155,ABKYCModule.setDefaultSigner +FNDA:0,ABKYCModule.setDefaultSigner +DA:156,0 +FN:164,ABKYCModule.incrementNonce +FNDA:0,ABKYCModule.incrementNonce +DA:165,0 +FN:175,ABKYCModule.setCollectionSigner +FNDA:0,ABKYCModule.setCollectionSigner +DA:176,0 +FN:193,ABKYCModule.getSigner +FNDA:0,ABKYCModule.getSigner +DA:194,0 +FN:211,ABKYCModule._getSigner +FNDA:0,ABKYCModule._getSigner +DA:212,0 +DA:213,0 +DA:214,0 +BRDA:214,1,0,- +BRDA:214,1,1,- +DA:215,0 +FNF:9 +FNH:3 +LF:12 +LH:4 +BRF:4 +BRH:1 end_of_record TN: SF:src/utils/ABVerifier.sol -FN:91,ABVerifier.initialize -FNDA:0,ABVerifier.initialize -DA:92,0 -BRDA:92,0,0,- -BRDA:92,0,1,- -DA:93,0 -DA:96,0 -DA:97,0 -FN:117,ABVerifier.verifySignature721 -FNDA:0,ABVerifier.verifySignature721 +FN:97,ABVerifier.initialize +FNDA:201,ABVerifier.initialize +DA:98,200 +BRDA:98,0,0,1 +BRDA:98,0,1,199 +DA:99,199 +DA:102,199 +DA:103,199 +FN:121,ABVerifier.verifySignatureKYC +FNDA:0,ABVerifier.verifySignatureKYC DA:122,0 -DA:124,0 -DA:129,0 -FN:144,ABVerifier.verifySignature1155 -FNDA:0,ABVerifier.verifySignature1155 -DA:151,0 -DA:153,0 -DA:158,0 -FN:174,ABVerifier.setDefaultSigner -FNDA:0,ABVerifier.setDefaultSigner -DA:175,0 -FN:185,ABVerifier.setCollectionSigner -FNDA:0,ABVerifier.setCollectionSigner -DA:186,0 -FN:203,ABVerifier.getSigner -FNDA:0,ABVerifier.getSigner -DA:204,0 -FN:221,ABVerifier._getSigner -FNDA:0,ABVerifier._getSigner -DA:222,0 -DA:223,0 -DA:224,0 -BRDA:224,1,0,- -BRDA:224,1,1,- -DA:225,0 -FNF:7 -FNH:0 -LF:17 -LH:0 +DA:125,0 +FN:139,ABVerifier.verifySignature721 +FNDA:525,ABVerifier.verifySignature721 +DA:144,525 +DA:146,525 +DA:151,525 +FN:166,ABVerifier.verifySignature1155 +FNDA:788,ABVerifier.verifySignature1155 +DA:173,788 +DA:175,788 +DA:180,788 +FN:196,ABVerifier.setDefaultSigner +FNDA:40,ABVerifier.setDefaultSigner +DA:197,39 +FN:206,ABVerifier.setKycSigner +FNDA:0,ABVerifier.setKycSigner +DA:207,0 +FN:215,ABVerifier.incrementNonce +FNDA:0,ABVerifier.incrementNonce +DA:216,0 +FN:226,ABVerifier.setCollectionSigner +FNDA:4,ABVerifier.setCollectionSigner +DA:227,3 +FN:244,ABVerifier.getSigner +FNDA:4,ABVerifier.getSigner +DA:245,4 +FN:262,ABVerifier._getSigner +FNDA:1317,ABVerifier._getSigner +DA:263,1317 +DA:264,1317 +DA:265,1317 +BRDA:265,1,0,2 +BRDA:265,1,1,1317 +DA:266,2 +FNF:10 +FNH:7 +LF:21 +LH:17 BRF:4 -BRH:0 +BRH:4 end_of_record TN: SF:test/_mocks/ABSuperToken.sol FN:30,ABSuperToken.mint -FNDA:512,ABSuperToken.mint -DA:31,512 +FNDA:537,ABSuperToken.mint +DA:31,537 FN:42,ABSuperToken.burn FNDA:0,ABSuperToken.burn DA:43,0 @@ -1030,12 +1474,12 @@ end_of_record TN: SF:test/_mocks/MockToken.sol FN:12,MockToken.mint -FNDA:0,MockToken.mint -DA:13,0 +FNDA:252,MockToken.mint +DA:13,252 FNF:1 -FNH:0 +FNH:1 LF:1 -LH:0 +LH:1 BRF:0 BRH:0 end_of_record From a00595247c4d10bfdb75154415c490138df5b0bc Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 28 Nov 2023 11:22:28 +0100 Subject: [PATCH 35/74] init draft erc20 mint (with kyc integration) --- forge-cache/solidity-files-cache.json | 189 +++- test/_testdata/ERC721ABLECoin.td.sol | 53 + test/token/ERC721/ERC721ABLECoin.t.sol | 1263 ++++++++++++++++++++++++ 3 files changed, 1503 insertions(+), 2 deletions(-) create mode 100644 test/_testdata/ERC721ABLECoin.td.sol create mode 100644 test/token/ERC721/ERC721ABLECoin.t.sol diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 549a045..5e10fbb 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -7224,8 +7224,8 @@ } }, "src/token/ERC721/ERC721ABLECoin.sol": { - "lastModificationDate": 1698746174403, - "contentHash": "61ebbf85d298124e1dedf379947f13a3", + "lastModificationDate": 1701165890991, + "contentHash": "9fdce83321419a88d82ff6ed4c6e376c", "sourceName": "src/token/ERC721/ERC721ABLECoin.sol", "solcConfig": { "settings": { @@ -7274,6 +7274,7 @@ "src/libraries/ABEvents.sol", "src/token/ERC721/ERC721AB.sol", "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", "src/utils/IABVerifier.sol" ], "versionRequirement": "^0.8.18", @@ -8058,6 +8059,47 @@ } } }, + "test/_testdata/ERC721ABLECoin.td.sol": { + "lastModificationDate": 1701165512839, + "contentHash": "7070e68d1d9c0a9b6cf612cbbf17af05", + "sourceName": "test/_testdata/ERC721ABLECoin.td.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [], + "versionRequirement": "^0.8.18", + "artifacts": { + "ERC721ABCoinTestData": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLECoin.td.sol/ERC721ABCoinTestData.json" + } + } + }, "test/_testdata/ERC721ABOE.td.sol": { "lastModificationDate": 1699519078082, "contentHash": "0788ecee578ed53f129ab21f714a4788", @@ -8653,6 +8695,149 @@ } } }, + "test/token/ERC721/ERC721ABLECoin.t.sol": { + "lastModificationDate": 1701166882698, + "contentHash": "52f27c899ef7397584ea9ec5535f7c67", + "sourceName": "test/token/ERC721/ERC721ABLECoin.t.sol", + "solcConfig": { + "settings": { + "optimizer": { + "enabled": true, + "runs": 200 + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "*": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ] + } + }, + "evmVersion": "paris", + "libraries": {} + } + }, + "imports": [ + "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", + "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", + "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", + "lib/forge-std/lib/ds-test/src/test.sol", + "lib/forge-std/src/Base.sol", + "lib/forge-std/src/StdAssertions.sol", + "lib/forge-std/src/StdChains.sol", + "lib/forge-std/src/StdCheats.sol", + "lib/forge-std/src/StdError.sol", + "lib/forge-std/src/StdInvariant.sol", + "lib/forge-std/src/StdJson.sol", + "lib/forge-std/src/StdMath.sol", + "lib/forge-std/src/StdStorage.sol", + "lib/forge-std/src/StdStyle.sol", + "lib/forge-std/src/StdUtils.sol", + "lib/forge-std/src/Test.sol", + "lib/forge-std/src/Vm.sol", + "lib/forge-std/src/console.sol", + "lib/forge-std/src/console2.sol", + "lib/forge-std/src/interfaces/IMulticall3.sol", + "lib/openzeppelin-contracts/contracts/access/Ownable.sol", + "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", + "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", + "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", + "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", + "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", + "lib/openzeppelin-contracts/contracts/utils/Address.sol", + "lib/openzeppelin-contracts/contracts/utils/Context.sol", + "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", + "lib/openzeppelin-contracts/contracts/utils/Strings.sol", + "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", + "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", + "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", + "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", + "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", + "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", + "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", + "src/factory/AnotherCloneFactory.sol", + "src/libraries/ABDataTypes.sol", + "src/libraries/ABErrors.sol", + "src/libraries/ABEvents.sol", + "src/royalty/ABRoyalty.sol", + "src/royalty/IABRoyalty.sol", + "src/token/ERC1155/ERC1155AB.sol", + "src/token/ERC721/ERC721AB.sol", + "src/token/ERC721/ERC721ABLECoin.sol", + "src/utils/ABDataRegistry.sol", + "src/utils/ABKYCModule.sol", + "src/utils/ABVerifier.sol", + "src/utils/IABDataRegistry.sol", + "src/utils/IABKYCModule.sol", + "src/utils/IABVerifier.sol", + "test/_mocks/ABSuperToken.sol", + "test/_mocks/MockToken.sol", + "test/_testdata/ERC721ABLECoin.td.sol" + ], + "versionRequirement": "^0.8.18", + "artifacts": { + "ERC721ABLECoinTest": { + "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLECoin.t.sol/ERC721ABLECoinTest.json" + } + } + }, "test/token/ERC721/ERC721ABOE.t.sol": { "lastModificationDate": 1700732833038, "contentHash": "62a5f9653b561bb7ff332b990c95143d", diff --git a/test/_testdata/ERC721ABLECoin.td.sol b/test/_testdata/ERC721ABLECoin.td.sol new file mode 100644 index 0000000..cba5f1c --- /dev/null +++ b/test/_testdata/ERC721ABLECoin.td.sol @@ -0,0 +1,53 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +contract ERC721ABCoinTestData { + /* Superfluid Host */ + address public constant SF_HOST = 0x4C073B3baB6d8826b8C5b229f3cfdC1eC6E47E74; + + /* Roles Hash */ + bytes32 public constant DEFAULT_ADMIN_ROLE_HASH = 0x0000000000000000000000000000000000000000000000000000000000000000; + bytes32 public constant PUBLISHER_ROLE_HASH = keccak256("PUBLISHER_ROLE"); + bytes32 public constant AB_ADMIN_ROLE_HASH = keccak256("AB_ADMIN_ROLE"); + bytes32 public constant FACTORY_ROLE_HASH = keccak256("FACTORY_ROLE"); + + /* Test Data */ + string public constant MOCK_TOKEN_NAME = "Mock Token"; + string public constant MOCK_TOKEN_SYMBOL = "MOCK"; + uint256 public constant PUBLISHER_FEE = 9_000; + uint256 public constant DROP_SPECIFIC_FEE = 5_000; + uint256 public constant PRICE = 0.1 ether; + uint256 public constant PRICE_CURRENCY = 100e18; + + uint256 public constant SUPPLY = 5; + uint256 public constant SHARE_PER_TOKEN = 90_000; + uint256 public constant MINT_GENESIS = 1; + uint256 public constant UNITS_PRECISION = 1_000; + string public constant NAME = "name"; + string public constant SYMBOL = "SYMBOL"; + string public constant URI = "http://uri.ipfs/"; + bytes32 public constant SALT = "SALT"; + bytes32 public constant SALT_2 = "SALT_2"; + + bool public constant PUBLIC_PHASE = true; + bool public constant PRIVATE_PHASE = false; + + uint256 public constant PHASE_ID_0 = 0; + uint256 public constant PHASE_ID_1 = 1; + uint256 public constant PHASE_ID_2 = 2; + + uint256 public constant P0_PRICE = 0.1 ether; + uint256 public constant P0_START = 1680000000; + uint256 public constant P0_END = 1680000100; + uint256 public constant P0_MAX_MINT = 3; + + uint256 public constant P1_PRICE = 0.125 ether; + uint256 public constant P1_START = 1680100001; + uint256 public constant P1_END = 1680100100; + uint256 public constant P1_MAX_MINT = 3; + + uint256 public constant P2_PRICE = 0.15 ether; + uint256 public constant P2_START = 1680200001; + uint256 public constant P2_END = 1680200100; + uint256 public constant P2_MAX_MINT = 3; +} diff --git a/test/token/ERC721/ERC721ABLECoin.t.sol b/test/token/ERC721/ERC721ABLECoin.t.sol new file mode 100644 index 0000000..9541049 --- /dev/null +++ b/test/token/ERC721/ERC721ABLECoin.t.sol @@ -0,0 +1,1263 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +import "forge-std/Test.sol"; + +import {ERC721ABLECoin} from "src/token/ERC721/ERC721ABLECoin.sol"; +import {ERC1155AB} from "src/token/ERC1155/ERC1155AB.sol"; +import {ABDataRegistry} from "src/utils/ABDataRegistry.sol"; +import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; +import {ABVerifier} from "src/utils/ABVerifier.sol"; +import {ABKYCModule} from "src/utils/ABKYCModule.sol"; +import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; +import {ABDataTypes} from "src/libraries/ABDataTypes.sol"; +import {ABErrors} from "src/libraries/ABErrors.sol"; + +import {ABSuperToken} from "test/_mocks/ABSuperToken.sol"; +import {MockToken} from "test/_mocks/MockToken.sol"; +import {ERC721ABCoinTestData} from "test/_testdata/ERC721ABLECoin.td.sol"; + +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {ECDSA} from "@openzeppelin/contracts/utils/cryptography/ECDSA.sol"; +import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; +import {ProxyAdmin} from "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol"; + +/* solhint-disable */ +contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { + using ECDSA for bytes32; + + /* Admin */ + uint256 public abSignerPkey = 69; + address public abSigner; + uint256 public kycSignerPkey = 420; + address public kycSigner; + address public genesisRecipient; + address payable public treasury; + + /* Users */ + address payable public alice; + address payable public bob; + address payable public karen; + address payable public dave; + address payable public publisher; + + /* Contracts */ + ABVerifier public abVerifier; + ABSuperToken public royaltyToken; + MockToken public mockUSDC; + ABDataRegistry public abDataRegistry; + AnotherCloneFactory public anotherCloneFactory; + ABKYCModule public abKYCModule; + ABRoyalty public royaltyImpl; + ERC721ABLECoin public erc721Impl; + ERC1155AB public erc1155Impl; + ProxyAdmin public proxyAdmin; + TransparentUpgradeableProxy public anotherCloneFactoryProxy; + TransparentUpgradeableProxy public abDataRegistryProxy; + TransparentUpgradeableProxy public abVerifierProxy; + TransparentUpgradeableProxy public abKYCModuleProxy; + + ERC721ABLECoin public nft; + + uint256 public constant DROP_ID_OFFSET = 10_000; + + /* Environment Variables */ + string BASE_RPC_URL = vm.envString("BASE_RPC"); + + function setUp() public { + vm.selectFork(vm.createFork(BASE_RPC_URL)); + + /* Setup admins */ + abSigner = vm.addr(abSignerPkey); + kycSigner = vm.addr(kycSignerPkey); + genesisRecipient = vm.addr(100); + + /* Setup users */ + alice = payable(vm.addr(1)); + bob = payable(vm.addr(2)); + karen = payable(vm.addr(3)); + dave = payable(vm.addr(4)); + publisher = payable(vm.addr(5)); + treasury = payable(vm.addr(1000)); + + vm.deal(alice, 100 ether); + vm.deal(bob, 100 ether); + vm.deal(karen, 100 ether); + vm.deal(dave, 100 ether); + + vm.label(alice, "alice"); + vm.label(bob, "bob"); + vm.label(karen, "karen"); + vm.label(dave, "dave"); + vm.label(publisher, "publisher"); + vm.label(treasury, "treasury"); + + /* Contracts Deployments */ + proxyAdmin = new ProxyAdmin(); + + mockUSDC = new MockToken(MOCK_TOKEN_NAME, MOCK_TOKEN_SYMBOL); + vm.label(address(mockUSDC), "mockUSDC"); + mockUSDC.mint(alice, 1000e18); + mockUSDC.mint(bob, 1000e18); + + royaltyToken = new ABSuperToken(SF_HOST); + royaltyToken.initialize(IERC20(address(0)), 18, "fakeSuperToken", "FST"); + vm.label(address(royaltyToken), "royaltyToken"); + + abVerifierProxy = new TransparentUpgradeableProxy( + address(new ABVerifier()), + address(proxyAdmin), + abi.encodeWithSelector(ABVerifier.initialize.selector, abSigner) + ); + abVerifier = ABVerifier(address(abVerifierProxy)); + vm.label(address(abVerifier), "abVerifier"); + + abKYCModuleProxy = new TransparentUpgradeableProxy( + address(new ABKYCModule()), + address(proxyAdmin), + abi.encodeWithSelector(ABKYCModule.initialize.selector, kycSigner) + ); + abKYCModule = ABKYCModule(address(abKYCModuleProxy)); + vm.label(address(abKYCModule), "abKYCModule"); + + erc1155Impl = new ERC1155AB(); + vm.label(address(erc1155Impl), "erc1155Impl"); + + erc721Impl = new ERC721ABLECoin(); + vm.label(address(erc721Impl), "erc721Impl"); + + royaltyImpl = new ABRoyalty(); + vm.label(address(royaltyImpl), "royaltyImpl"); + + abDataRegistryProxy = new TransparentUpgradeableProxy( + address(new ABDataRegistry()), + address(proxyAdmin), + abi.encodeWithSelector(ABDataRegistry.initialize.selector, DROP_ID_OFFSET, treasury) + ); + + abDataRegistry = ABDataRegistry(address(abDataRegistryProxy)); + vm.label(address(abDataRegistry), "abDataRegistry"); + + anotherCloneFactoryProxy = new TransparentUpgradeableProxy( + address(new AnotherCloneFactory()), + address(proxyAdmin), + abi.encodeWithSelector(AnotherCloneFactory.initialize.selector, + address(abDataRegistry), + address(abVerifier), + address(erc721Impl), + address(erc1155Impl), + address(royaltyImpl) + ) + ); + + anotherCloneFactory = AnotherCloneFactory(address(anotherCloneFactoryProxy)); + + vm.label(address(anotherCloneFactory), "anotherCloneFactory"); + + /* Setup Access Control Roles */ + anotherCloneFactory.grantRole(AB_ADMIN_ROLE_HASH, address(this)); + + /* Init contracts params */ + abDataRegistry.grantRole(keccak256("FACTORY_ROLE"), address(anotherCloneFactory)); + + anotherCloneFactory.setABKYCModule(address(abKYCModule)); + anotherCloneFactory.createPublisherProfile(publisher, PUBLISHER_FEE); + + vm.prank(publisher); + anotherCloneFactory.createCollection721(NAME, SALT); + + (address nftAddr,) = anotherCloneFactory.collections(0); + + nft = ERC721ABLECoin(nftAddr); + } + + function test_initialize() public { + TransparentUpgradeableProxy erc721proxy = new TransparentUpgradeableProxy( + address(new ERC721ABLECoin()), + address(proxyAdmin), + "" + ); + + nft = ERC721ABLECoin(address(erc721proxy)); + nft.initialize(publisher, address(abDataRegistry), address(abVerifier), address(abKYCModule), NAME); + + assertEq(address(nft.abDataRegistry()), address(abDataRegistry)); + assertEq(address(nft.abVerifier()), address(abVerifier)); + assertEq(nft.publisher(), publisher); + } + + function test_initialize_alreadyInitialized() public { + vm.expectRevert("ERC721A__Initializable: contract is already initialized"); + nft.initialize(address(this), address(abDataRegistry), address(abVerifier), address(abKYCModule), NAME); + } + + function test_initDrop_owner() public { + vm.prank(publisher); + + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + uint256 priceCurrency = nft.priceCurrency(); + assertEq(priceCurrency, PRICE_CURRENCY); + + address mintCurrency = address(nft.mintCurrency()); + assertEq(mintCurrency, address(mockUSDC)); + + uint256 maxSupply = nft.maxSupply(); + assertEq(maxSupply, SUPPLY); + + uint256 dropId = nft.dropId(); + assertEq(dropId, DROP_ID_OFFSET + 1); + + assertEq(nft.balanceOf(genesisRecipient), MINT_GENESIS); + + string memory currentURI = nft.tokenURI(1); + assertEq(keccak256(abi.encodePacked(currentURI)), keccak256(abi.encodePacked(URI, "1"))); + } + + function test_initDrop_noRoyaltyNFT() public { + vm.prank(publisher); + + nft.initDrop(PRICE_CURRENCY, SUPPLY, 0, MINT_GENESIS, genesisRecipient, address(0), address(mockUSDC), URI); + + uint256 priceCurrency = nft.priceCurrency(); + assertEq(priceCurrency, PRICE_CURRENCY); + + address mintCurrency = address(nft.mintCurrency()); + assertEq(mintCurrency, address(mockUSDC)); + + uint256 maxSupply = nft.maxSupply(); + assertEq(maxSupply, SUPPLY); + + uint256 dropId = nft.dropId(); + assertEq(dropId, DROP_ID_OFFSET + 1); + + uint256 sharePerToken = nft.sharePerToken(); + assertEq(sharePerToken, 0); + + assertEq(nft.balanceOf(genesisRecipient), MINT_GENESIS); + + string memory currentURI = nft.tokenURI(1); + assertEq(keccak256(abi.encodePacked(currentURI)), keccak256(abi.encodePacked(URI, "1"))); + } + + function test_initDrop_alreadyInitialized() public { + vm.startPrank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + + vm.expectRevert(ABErrors.DROP_ALREADY_INITIALIZED.selector); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + vm.stopPrank(); + } + + function test_initDrop_noGenesisMint() public { + vm.prank(publisher); + nft.initDrop( + PRICE_CURRENCY, SUPPLY, SHARE_PER_TOKEN, 0, genesisRecipient, address(royaltyToken), address(mockUSDC), URI + ); + + uint256 maxSupply = nft.maxSupply(); + assertEq(maxSupply, SUPPLY); + + uint256 priceCurrency = nft.priceCurrency(); + assertEq(priceCurrency, PRICE_CURRENCY); + + address mintCurrency = address(nft.mintCurrency()); + assertEq(mintCurrency, address(mockUSDC)); + + assertEq(nft.balanceOf(genesisRecipient), 0); + } + + function test_initDrop_nonOwner() public { + vm.prank(alice); + vm.expectRevert(); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + } + + function test_initDrop_supplyToGenesisRatio() public { + vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); + vm.prank(publisher); + + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + SUPPLY + 1, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + } + + function test_initDrop_invalidSharePerToken() public { + vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); + vm.prank(publisher); + + nft.initDrop( + PRICE_CURRENCY, SUPPLY, 0, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(mockUSDC), URI + ); + } + + function test_initDrop_invalidRoyaltyCurrency() public { + vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); + vm.prank(publisher); + + nft.initDrop( + PRICE_CURRENCY, SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(0), address(mockUSDC), URI + ); + } + + function test_setBaseURI_owner() public { + vm.startPrank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + + string memory currentURI = nft.tokenURI(1); + assertEq(keccak256(abi.encodePacked(currentURI)), keccak256(abi.encodePacked(URI, "1"))); + + string memory newURI = "http://new-uri.ipfs/"; + + nft.setBaseURI(newURI); + currentURI = nft.tokenURI(1); + assertEq(keccak256(abi.encodePacked(currentURI)), keccak256(abi.encodePacked(newURI, "1"))); + + vm.stopPrank(); + } + + function test_setBaseURI_nonOwner() public { + vm.prank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + string memory newURI = "http://new-uri.ipfs/"; + + vm.prank(alice); + + vm.expectRevert(); + nft.setBaseURI(newURI); + } + + function test_setDropPhases_owner_multiplePhases() public { + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](3); + phases[0] = phase0; + phases[1] = phase1; + phases[2] = phase2; + + vm.prank(publisher); + nft.setDropPhases(phases); + + (uint256 _P0_START, uint256 _P0_END, uint256 _P0_PRICE, uint256 _P0_MAX_MINT, bool _P0_PHASE_STATUS) = + nft.phases(0); + (uint256 _P1_START, uint256 _P1_END, uint256 _P1_PRICE, uint256 _P1_MAX_MINT, bool _P1_PHASE_STATUS) = + nft.phases(1); + (uint256 _P2_START, uint256 _P2_END, uint256 _P2_PRICE, uint256 _P2_MAX_MINT, bool _P2_PHASE_STATUS) = + nft.phases(2); + + assertEq(_P0_START, P0_START); + assertEq(_P0_END, P0_END); + assertEq(_P0_PRICE, P0_PRICE); + assertEq(_P0_MAX_MINT, P0_MAX_MINT); + assertEq(_P0_PHASE_STATUS, PRIVATE_PHASE); + + assertEq(_P1_START, P1_START); + assertEq(_P1_END, P1_END); + assertEq(_P1_PRICE, P1_PRICE); + assertEq(_P1_MAX_MINT, P1_MAX_MINT); + assertEq(_P1_PHASE_STATUS, PRIVATE_PHASE); + + assertEq(_P2_START, P2_START); + assertEq(_P2_END, P2_END); + assertEq(_P2_PRICE, P2_PRICE); + assertEq(_P2_MAX_MINT, P2_MAX_MINT); + assertEq(_P2_PHASE_STATUS, PRIVATE_PHASE); + } + + function test_setDropPhases_owner_onePhase() public { + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + + vm.prank(publisher); + nft.setDropPhases(phases); + + (uint256 _P0_START, uint256 _P0_END, uint256 _P0_PRICE, uint256 _P0_MAX_MINT, bool _P0_PHASE_STATUS) = + nft.phases(0); + + assertEq(_P0_START, P0_START); + assertEq(_P0_END, P0_END); + assertEq(_P0_PRICE, P0_PRICE); + assertEq(_P0_MAX_MINT, P0_MAX_MINT); + assertEq(_P0_PHASE_STATUS, PRIVATE_PHASE); + } + + function test_setDropPhases_owner_rewritePhasesManyToOne() public { + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](3); + phases[0] = phase0; + phases[1] = phase1; + phases[2] = phase2; + + vm.prank(publisher); + nft.setDropPhases(phases); + + (uint256 _START, uint256 _END, uint256 _PRICE, uint256 _MAX_MINT, bool _PHASE_STATUS) = nft.phases(0); + + assertEq(_START, P0_START); + assertEq(_END, P0_END); + assertEq(_PRICE, P0_PRICE); + assertEq(_MAX_MINT, P0_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); + + (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); + + assertEq(_START, P1_START); + assertEq(_END, P1_END); + assertEq(_PRICE, P1_PRICE); + assertEq(_MAX_MINT, P1_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); + + (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); + + assertEq(_START, P2_START); + assertEq(_END, P2_END); + assertEq(_PRICE, P2_PRICE); + assertEq(_MAX_MINT, P2_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); + + phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + + vm.prank(publisher); + nft.setDropPhases(phases); + + (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); + + assertEq(_START, P0_START); + assertEq(_END, P0_END); + assertEq(_PRICE, P0_PRICE); + assertEq(_MAX_MINT, P0_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); + + vm.expectRevert(); + (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); + } + + function test_setDropPhases_owner_rewritePhasesOneToMany() public { + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + + vm.prank(publisher); + nft.setDropPhases(phases); + + (uint256 _START, uint256 _END, uint256 _PRICE, uint256 _MAX_MINT, bool _PHASE_STATUS) = nft.phases(0); + + assertEq(_START, P0_START); + assertEq(_END, P0_END); + assertEq(_PRICE, P0_PRICE); + assertEq(_MAX_MINT, P0_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); + + ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); + phases = new ABDataTypes.Phase[](3); + phases[0] = phase0; + phases[1] = phase1; + phases[2] = phase2; + + vm.prank(publisher); + nft.setDropPhases(phases); + + (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); + + assertEq(_START, P0_START); + assertEq(_END, P0_END); + assertEq(_PRICE, P0_PRICE); + assertEq(_MAX_MINT, P0_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); + + (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); + + assertEq(_START, P1_START); + assertEq(_END, P1_END); + assertEq(_PRICE, P1_PRICE); + assertEq(_MAX_MINT, P1_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); + + (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); + + assertEq(_START, P2_START); + assertEq(_END, P2_END); + assertEq(_PRICE, P2_PRICE); + assertEq(_MAX_MINT, P2_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); + } + + function test_setDropPhases_incorrectPhaseOrder() public { + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); + + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](2); + phases[0] = phase1; + phases[1] = phase0; + + vm.prank(publisher); + vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); + nft.setDropPhases(phases); + } + + function test_setDropPhases_nonOwner() public { + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + + vm.prank(bob); + + vm.expectRevert(); + nft.setDropPhases(phases); + } + + function test_mint() public { + vm.startPrank(publisher); + + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + vm.stopPrank(); + + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + // Impersonate `alice` + vm.startPrank(alice); + mockUSDC.approve(address(nft), PRICE_CURRENCY); + nft.mintCoin(alice, PHASE_ID_0, 1, signature, kycSignature); + vm.stopPrank(); + + assertEq(nft.balanceOf(alice), 1); + } + + // function test_mint_dropSoldOut() public { + // vm.startPrank(publisher); + // nft.initDrop( + // PRICE_CURRENCY, + // SUPPLY, + // SHARE_PER_TOKEN, + // MINT_GENESIS, + // genesisRecipient, + // address(royaltyToken), + // address(mockUSDC), + // URI + // ); + + // // Set block.timestamp to be after the start of Phase 0 + // vm.warp(P0_START + 1); + + // // Set the phases + // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 4, PRIVATE_PHASE); + // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + // phases[0] = phase0; + // nft.setDropPhases(phases); + // vm.stopPrank(); + + // uint256 mintQty = 4; + + // // Create signature for `alice` dropId 0 and phaseId 0 + // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + // bytes memory kycSignature = _generateKycSignature(alice, 0); + + // vm.prank(alice); + // nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + + // signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); + // kycSignature = _generateKycSignature(bob, 0); + + // vm.prank(bob); + // vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); + // nft.mint{value: PRICE}(bob, PHASE_ID_0, 1, signature, kycSignature); + // } + + // function test_mint_notEnoughTokenAvailable() public { + // vm.startPrank(publisher); + // nft.initDrop( + // PRICE_CURRENCY, + // SUPPLY, + // SHARE_PER_TOKEN, + // MINT_GENESIS, + // genesisRecipient, + // address(royaltyToken), + // address(mockUSDC), + // URI + // ); + + // // Set block.timestamp to be after the start of Phase 0 + // vm.warp(P0_START + 1); + + // // Set the phases + // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); + // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + // phases[0] = phase0; + // nft.setDropPhases(phases); + // vm.stopPrank(); + + // uint256 aliceMintQty = 3; + + // // Create signature for `alice` dropId 0 and phaseId 0 + // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + // bytes memory kycSignature = _generateKycSignature(alice, 0); + + // vm.prank(alice); + // nft.mint{value: PRICE * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + + // uint256 bobMintQty = 2; + // signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); + // kycSignature = _generateKycSignature(bob, 0); + + // vm.prank(bob); + // vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); + // nft.mint{value: PRICE * bobMintQty}(bob, PHASE_ID_0, bobMintQty, signature, kycSignature); + // } + + // function test_mint_noPhaseSet() public { + // vm.prank(publisher); + // nft.initDrop( + // PRICE_CURRENCY, + // SUPPLY, + // SHARE_PER_TOKEN, + // MINT_GENESIS, + // genesisRecipient, + // address(royaltyToken), + // address(mockUSDC), + // URI + // ); + + // uint256 aliceMintQty = 3; + + // // Create signature for `alice` dropId 0 and phaseId 0 + // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + // bytes memory kycSignature = _generateKycSignature(alice, 0); + + // vm.prank(alice); + // vm.expectRevert(); + // nft.mint{value: PRICE * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + // } + + // function test_mint_incorrectETHSent() public { + // vm.startPrank(publisher); + // nft.initDrop( + // PRICE_CURRENCY, + // SUPPLY, + // SHARE_PER_TOKEN, + // MINT_GENESIS, + // genesisRecipient, + // address(royaltyToken), + // address(mockUSDC), + // URI + // ); + + // // Set block.timestamp to be after the start of Phase 0 + // vm.warp(P0_START + 1); + + // // Set the phases + // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); + // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + // phases[0] = phase0; + // nft.setDropPhases(phases); + + // vm.stopPrank(); + + // // Create signature for `alice` dropId 0 and phaseId 0 + // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + // bytes memory kycSignature = _generateKycSignature(alice, 0); + + // // Impersonate `alice` + // vm.startPrank(alice); + + // uint256 mintQty = 4; + + // uint256 tooHighPrice = PRICE * (mintQty + 1); + // uint256 tooLowPrice = PRICE * (mintQty - 1); + + // vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); + // nft.mint{value: tooHighPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + + // vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); + // nft.mint{value: tooLowPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + + // vm.stopPrank(); + // } + + // function test_mint_maxMintPerAddress() public { + // vm.startPrank(publisher); + // nft.initDrop( + // PRICE_CURRENCY, + // SUPPLY, + // SHARE_PER_TOKEN, + // MINT_GENESIS, + // genesisRecipient, + // address(royaltyToken), + // address(mockUSDC), + // URI + // ); + + // // Set block.timestamp to be after the start of Phase 0 + // vm.warp(P0_START + 1); + + // // Set the phases + // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); + // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + // phases[0] = phase0; + // nft.setDropPhases(phases); + + // vm.stopPrank(); + + // // Create signature for `alice` dropId 0 and phaseId 0 + // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + // bytes memory kycSignature = _generateKycSignature(alice, 0); + + // // Impersonate `alice` + // vm.startPrank(alice); + + // uint256 mintQty = P0_MAX_MINT + 1; + + // vm.expectRevert(ABErrors.MAX_MINT_PER_ADDRESS.selector); + // nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + + // vm.stopPrank(); + // } + + // function test_mint_phaseNotActive() public { + // vm.startPrank(publisher); + // nft.initDrop( + // PRICE_CURRENCY, + // SUPPLY, + // SHARE_PER_TOKEN, + // MINT_GENESIS, + // genesisRecipient, + // address(royaltyToken), + // address(mockUSDC), + // URI + // ); + + // // Set block.timestamp to be before the start of Phase 0 + // vm.warp(P0_START - 1); + + // // Set the phases + // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); + // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + // phases[0] = phase0; + // nft.setDropPhases(phases); + + // vm.stopPrank(); + + // // Create signature for `alice` dropId 0 and phaseId 0 + // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + // bytes memory kycSignature = _generateKycSignature(alice, 0); + + // // Impersonate `alice` + // vm.startPrank(alice); + + // uint256 mintQty = 4; + + // vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); + // nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + + // vm.stopPrank(); + // } + + // function test_mint_notEligible() public { + // vm.startPrank(publisher); + // nft.initDrop( + // PRICE_CURRENCY, + // SUPPLY, + // SHARE_PER_TOKEN, + // MINT_GENESIS, + // genesisRecipient, + // address(royaltyToken), + // address(mockUSDC), + // URI + // ); + + // // Set block.timestamp to be after the start of Phase 0 + // vm.warp(P0_START + 1); + + // // Set the phases + // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); + // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + // phases[0] = phase0; + // nft.setDropPhases(phases); + + // vm.stopPrank(); + + // // Impersonate `alice` + // vm.startPrank(alice); + + // uint256 mintQty = 4; + + // bytes memory invalidSignature = _generateInvalidSignature(alice, address(nft), PHASE_ID_0); + // bytes memory kycSignature = _generateKycSignature(alice, 0); + + // vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); + // nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); + + // vm.stopPrank(); + // } + + // function test_mint_public() public { + // vm.startPrank(publisher); + // nft.initDrop( + // PRICE_CURRENCY, + // SUPPLY, + // SHARE_PER_TOKEN, + // MINT_GENESIS, + // genesisRecipient, + // address(royaltyToken), + // address(mockUSDC), + // URI + // ); + + // // Set block.timestamp to be after the start of Phase 0 + // vm.warp(P0_START + 1); + + // // Set the phases + // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PUBLIC_PHASE); + // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + // phases[0] = phase0; + // nft.setDropPhases(phases); + + // vm.stopPrank(); + + // bytes memory kycSignature = _generateKycSignature(alice, 0); + + // // Impersonate `alice` + // vm.startPrank(alice); + + // uint256 mintQty = 4; + + // nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, "", kycSignature); + + // assertEq(nft.balanceOf(alice), mintQty); + + // vm.stopPrank(); + // } + + function test_setSharePerToken_admin(uint256 _newShare) public { + vm.assume(_newShare != SHARE_PER_TOKEN); + vm.assume(_newShare < 1_000_000); + + vm.startPrank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + + assertEq(nft.sharePerToken(), SHARE_PER_TOKEN); + + nft.setSharePerToken(_newShare); + + assertEq(nft.sharePerToken(), _newShare); + vm.stopPrank(); + } + + function test_setSharePerToken_nonAdmin(address _nonAdmin, uint256 _newShare) public { + vm.assume(_newShare != SHARE_PER_TOKEN); + vm.assume(_newShare < 1_000_000); + vm.assume(_nonAdmin != address(this)); + vm.assume(_nonAdmin != publisher); + + vm.prank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + + assertEq(nft.sharePerToken(), SHARE_PER_TOKEN); + + vm.prank(_nonAdmin); + vm.expectRevert(); + nft.setSharePerToken(_newShare); + } + + function test_withdrawERC20_admin() public { + vm.prank(alice); + mockUSDC.transfer(address(nft), 10e18); + + assertEq(mockUSDC.balanceOf(publisher), 0); + assertEq(mockUSDC.balanceOf(address(nft)), 10e18); + + vm.prank(publisher); + nft.withdrawERC20(address(mockUSDC), 10e18); + + assertEq(mockUSDC.balanceOf(publisher), 10e18); + assertEq(mockUSDC.balanceOf(address(nft)), 0); + } + + function test_withdrawERC20_nonAdmin(address _nonAdmin) public { + vm.assume(_nonAdmin != address(this)); + vm.assume(_nonAdmin != publisher); + + vm.prank(alice); + mockUSDC.transfer(address(nft), 10e18); + + vm.prank(_nonAdmin); + vm.expectRevert(); + nft.withdrawERC20(address(mockUSDC), 10e18); + } + + // function test_withdrawToRightholder(uint256 _amount) public { + // vm.assume(_amount > 10); + // vm.assume(_amount < 1e30); + // vm.deal(address(nft), _amount); + + // vm.prank(publisher); + // nft.withdrawToRightholder(); + + // uint256 expectedPublisherBalance = _amount * PUBLISHER_FEE / 10_000; + // uint256 expectedTreasuryBalance = _amount - expectedPublisherBalance; + + // assertEq(treasury.balance, expectedTreasuryBalance); + // assertEq(publisher.balance, expectedPublisherBalance); + // } + + // function test_withdrawToRightholder_allToPublisher(uint256 _amount) public { + // vm.assume(_amount > 10); + // vm.assume(_amount < 1e30); + // vm.deal(address(nft), _amount); + + // abDataRegistry.setPublisherFee(publisher, 10_000); + + // vm.prank(publisher); + // nft.withdrawToRightholder(); + + // uint256 expectedPublisherBalance = _amount; + // uint256 expectedTreasuryBalance = 0; + + // assertEq(treasury.balance, expectedTreasuryBalance); + // assertEq(publisher.balance, expectedPublisherBalance); + // } + + // function test_withdrawToRightholder_allToTreasury(uint256 _amount) public { + // vm.assume(_amount > 10); + // vm.assume(_amount < 1e30); + // vm.deal(address(nft), _amount); + + // abDataRegistry.setPublisherFee(publisher, 0); + + // vm.prank(publisher); + // nft.withdrawToRightholder(); + + // uint256 expectedPublisherBalance = 0; + // uint256 expectedTreasuryBalance = _amount; + + // assertEq(treasury.balance, expectedTreasuryBalance); + // assertEq(publisher.balance, expectedPublisherBalance); + // } + + // function test_withdrawToRightholder_dropSpecific_allToPublisher(uint256 _amount) public { + // vm.assume(_amount > 10); + // vm.assume(_amount < 1e30); + // vm.deal(address(nft), _amount); + + // vm.prank(publisher); + // nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + + // abDataRegistry.setDropFee(true, nft.dropId(), 10_000); + + // vm.prank(publisher); + // nft.withdrawToRightholder(); + + // uint256 expectedPublisherBalance = _amount; + // uint256 expectedTreasuryBalance = 0; + + // assertEq(treasury.balance, expectedTreasuryBalance); + // assertEq(publisher.balance, expectedPublisherBalance); + // } + + // function test_withdrawToRightholder_dropSpecific_allToTreasury(uint256 _amount) public { + // vm.assume(_amount > 10); + // vm.assume(_amount < 1e30); + // vm.deal(address(nft), _amount); + + // vm.prank(publisher); + // nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + + // abDataRegistry.setDropFee(true, nft.dropId(), 0); + + // vm.prank(publisher); + // nft.withdrawToRightholder(); + + // uint256 expectedPublisherBalance = 0; + // uint256 expectedTreasuryBalance = _amount; + + // assertEq(treasury.balance, expectedTreasuryBalance); + // assertEq(publisher.balance, expectedPublisherBalance); + // } + + // function test_withdrawToRightholder_invalidParameter(uint256 _amount) public { + // vm.assume(_amount > 10); + // vm.assume(_amount < 1e30); + // vm.deal(address(nft), _amount); + + // abDataRegistry.setTreasury(address(0)); + + // vm.prank(publisher); + // vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); + // nft.withdrawToRightholder(); + // } + + // function test_withdrawToRightholder_nonAdmin(address _sender, uint256 _amount) public { + // vm.assume(_amount > 10); + // vm.assume(_amount < 1e30); + // vm.assume(nft.owner() != _sender); + + // vm.deal(address(nft), _amount); + + // vm.prank(_sender); + // vm.expectRevert(); + // nft.withdrawToRightholder(); + // } + + function test_setMaxSupply() public { + vm.startPrank(publisher); + + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + + assertEq(nft.maxSupply(), SUPPLY); + nft.setMaxSupply(SUPPLY + 1); + + assertEq(nft.maxSupply(), SUPPLY + 1); + } + + function test_setMaxSupply_alreadyMinted() public { + vm.startPrank(publisher); + + nft.initDrop( + PRICE_CURRENCY, SUPPLY, SHARE_PER_TOKEN, 2, genesisRecipient, address(royaltyToken), address(mockUSDC), URI + ); + + vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); + nft.setMaxSupply(1); + + vm.stopPrank(); + } + + function test_symbol_initialized() public { + vm.startPrank(publisher); + nft.initDrop( + PRICE_CURRENCY, SUPPLY, SHARE_PER_TOKEN, 2, genesisRecipient, address(royaltyToken), address(mockUSDC), URI + ); + + string memory symbol = nft.symbol(); + + assertEq(keccak256(abi.encodePacked(symbol)) == keccak256(abi.encodePacked("AB10001")), true); + } + + function test_symbol_notInitialized() public { + string memory symbol = nft.symbol(); + + assertEq(keccak256(abi.encodePacked(symbol)) == keccak256(abi.encodePacked("")), true); + } + + function test_tokenURI_nonUnique() public { + string memory tokenURI = "metadata.io/"; + + vm.prank(publisher); + + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + tokenURI + ); + + string memory returnedTokenURI = nft.tokenURI(1); + assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("metadata.io/1")), true); + } + + function test_tokenURI_unique() public { + string memory tokenURI = "metadata.io"; + + vm.prank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + tokenURI + ); + + string memory returnedTokenURI = nft.tokenURI(1); + assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("metadata.io")), true); + } + + function test_tokenURI_empty() public { + string memory tokenURI = ""; + + vm.prank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + tokenURI + ); + + string memory returnedTokenURI = nft.tokenURI(1); + assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("")), true); + } + + function test_tokenURI_unminted() public { + string memory tokenURI = "metadata.io/"; + + vm.prank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + 0, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + tokenURI + ); + + vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); + nft.tokenURI(1); + } + + /* ******************************************************************************************/ + /* UTILITY FUNCTIONS */ + /* ******************************************************************************************/ + + function _generateBackendSignature(address _signFor, address _collection, uint256 _phaseId) + internal + view + returns (bytes memory signature) + { + // Create signature for user `signFor` for drop ID `_dropId` and phase ID `_phaseId` + bytes32 msgHash = keccak256(abi.encodePacked(_signFor, _collection, _phaseId)).toEthSignedMessageHash(); + (uint8 v, bytes32 r, bytes32 s) = vm.sign(abSignerPkey, msgHash); + signature = abi.encodePacked(r, s, v); + } + + function _generateKycSignature(address _signFor, uint256 _nonce) internal view returns (bytes memory signature) { + // Create signature for user `signFor` for drop ID `_dropId` and phase ID `_phaseId` + bytes32 msgHash = keccak256(abi.encodePacked(_signFor, _nonce)).toEthSignedMessageHash(); + (uint8 v, bytes32 r, bytes32 s) = vm.sign(kycSignerPkey, msgHash); + signature = abi.encodePacked(r, s, v); + } + + function _generateInvalidSignature(address _signFor, address _collection, uint256 _phaseId) + internal + pure + returns (bytes memory signature) + { + // Create signature for user `signFor` for drop ID `_dropId` and phase ID `_phaseId` + bytes32 msgHash = keccak256(abi.encodePacked(_signFor, _collection, _phaseId)).toEthSignedMessageHash(); + (uint8 v, bytes32 r, bytes32 s) = vm.sign(1000, msgHash); + signature = abi.encodePacked(r, s, v); + } +} From b9d4a51ca65f25777a969c6be7f06c2f2602b5c1 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 28 Nov 2023 15:41:45 +0100 Subject: [PATCH 36/74] increase coverage --- forge-cache/solidity-files-cache.json | 4 +- test/token/ERC721/ERC721ABLECoin.t.sol | 418 +++++++++++++------------ 2 files changed, 218 insertions(+), 204 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 5e10fbb..657f614 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -8696,8 +8696,8 @@ } }, "test/token/ERC721/ERC721ABLECoin.t.sol": { - "lastModificationDate": 1701166882698, - "contentHash": "52f27c899ef7397584ea9ec5535f7c67", + "lastModificationDate": 1701182445724, + "contentHash": "f3dd79aad5784cf315fb686602e8e441", "sourceName": "test/token/ERC721/ERC721ABLECoin.t.sol", "solcConfig": { "settings": { diff --git a/test/token/ERC721/ERC721ABLECoin.t.sol b/test/token/ERC721/ERC721ABLECoin.t.sol index 9541049..1bdc589 100644 --- a/test/token/ERC721/ERC721ABLECoin.t.sol +++ b/test/token/ERC721/ERC721ABLECoin.t.sol @@ -609,110 +609,120 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { assertEq(nft.balanceOf(alice), 1); } - // function test_mint_dropSoldOut() public { - // vm.startPrank(publisher); - // nft.initDrop( - // PRICE_CURRENCY, - // SUPPLY, - // SHARE_PER_TOKEN, - // MINT_GENESIS, - // genesisRecipient, - // address(royaltyToken), - // address(mockUSDC), - // URI - // ); + function test_mint_dropSoldOut() public { + vm.startPrank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); - // // Set block.timestamp to be after the start of Phase 0 - // vm.warp(P0_START + 1); + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); - // // Set the phases - // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 4, PRIVATE_PHASE); - // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - // phases[0] = phase0; - // nft.setDropPhases(phases); - // vm.stopPrank(); + // Set the phases + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 4, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + vm.stopPrank(); - // uint256 mintQty = 4; + uint256 mintQty = 4; - // // Create signature for `alice` dropId 0 and phaseId 0 - // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - // bytes memory kycSignature = _generateKycSignature(alice, 0); + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); - // vm.prank(alice); - // nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + vm.startPrank(alice); + mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); + nft.mintCoin(alice, PHASE_ID_0, mintQty, signature, kycSignature); + vm.stopPrank(); - // signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); - // kycSignature = _generateKycSignature(bob, 0); + signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); + kycSignature = _generateKycSignature(bob, 0); - // vm.prank(bob); - // vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - // nft.mint{value: PRICE}(bob, PHASE_ID_0, 1, signature, kycSignature); - // } + vm.startPrank(bob); + mockUSDC.approve(address(nft), PRICE_CURRENCY); + vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); + nft.mintCoin(bob, PHASE_ID_0, 1, signature, kycSignature); + vm.stopPrank(); + } - // function test_mint_notEnoughTokenAvailable() public { - // vm.startPrank(publisher); - // nft.initDrop( - // PRICE_CURRENCY, - // SUPPLY, - // SHARE_PER_TOKEN, - // MINT_GENESIS, - // genesisRecipient, - // address(royaltyToken), - // address(mockUSDC), - // URI - // ); + function test_mint_notEnoughTokenAvailable() public { + vm.startPrank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); - // // Set block.timestamp to be after the start of Phase 0 - // vm.warp(P0_START + 1); + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); - // // Set the phases - // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); - // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - // phases[0] = phase0; - // nft.setDropPhases(phases); - // vm.stopPrank(); + // Set the phases + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + vm.stopPrank(); - // uint256 aliceMintQty = 3; + uint256 aliceMintQty = 3; - // // Create signature for `alice` dropId 0 and phaseId 0 - // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - // bytes memory kycSignature = _generateKycSignature(alice, 0); + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); - // vm.prank(alice); - // nft.mint{value: PRICE * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + vm.startPrank(alice); + mockUSDC.approve(address(nft), PRICE_CURRENCY * aliceMintQty); + nft.mintCoin(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + vm.stopPrank(); - // uint256 bobMintQty = 2; - // signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); - // kycSignature = _generateKycSignature(bob, 0); + uint256 bobMintQty = 2; + signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); + kycSignature = _generateKycSignature(bob, 0); - // vm.prank(bob); - // vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - // nft.mint{value: PRICE * bobMintQty}(bob, PHASE_ID_0, bobMintQty, signature, kycSignature); - // } + vm.startPrank(bob); + mockUSDC.approve(address(nft), PRICE_CURRENCY * bobMintQty); + vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); + nft.mintCoin(bob, PHASE_ID_0, bobMintQty, signature, kycSignature); + vm.stopPrank(); + } - // function test_mint_noPhaseSet() public { - // vm.prank(publisher); - // nft.initDrop( - // PRICE_CURRENCY, - // SUPPLY, - // SHARE_PER_TOKEN, - // MINT_GENESIS, - // genesisRecipient, - // address(royaltyToken), - // address(mockUSDC), - // URI - // ); + function test_mint_noPhaseSet() public { + vm.prank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); - // uint256 aliceMintQty = 3; + uint256 aliceMintQty = 3; - // // Create signature for `alice` dropId 0 and phaseId 0 - // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - // bytes memory kycSignature = _generateKycSignature(alice, 0); + // Create signature for `bob` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); - // vm.prank(alice); - // vm.expectRevert(); - // nft.mint{value: PRICE * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); - // } + vm.startPrank(alice); + mockUSDC.approve(address(nft), PRICE_CURRENCY * aliceMintQty); + vm.expectRevert(); + nft.mintCoin(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + vm.stopPrank(); + } // function test_mint_incorrectETHSent() public { // vm.startPrank(publisher); @@ -759,159 +769,163 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { // vm.stopPrank(); // } - // function test_mint_maxMintPerAddress() public { - // vm.startPrank(publisher); - // nft.initDrop( - // PRICE_CURRENCY, - // SUPPLY, - // SHARE_PER_TOKEN, - // MINT_GENESIS, - // genesisRecipient, - // address(royaltyToken), - // address(mockUSDC), - // URI - // ); + function test_mint_maxMintPerAddress() public { + vm.startPrank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); - // // Set block.timestamp to be after the start of Phase 0 - // vm.warp(P0_START + 1); + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); - // // Set the phases - // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); - // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - // phases[0] = phase0; - // nft.setDropPhases(phases); + // Set the phases + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); - // vm.stopPrank(); + vm.stopPrank(); - // // Create signature for `alice` dropId 0 and phaseId 0 - // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - // bytes memory kycSignature = _generateKycSignature(alice, 0); + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); - // // Impersonate `alice` - // vm.startPrank(alice); + // Impersonate `alice` + vm.startPrank(alice); - // uint256 mintQty = P0_MAX_MINT + 1; + uint256 mintQty = P0_MAX_MINT + 1; + mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); - // vm.expectRevert(ABErrors.MAX_MINT_PER_ADDRESS.selector); - // nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + vm.expectRevert(ABErrors.MAX_MINT_PER_ADDRESS.selector); + nft.mintCoin(alice, PHASE_ID_0, mintQty, signature, kycSignature); - // vm.stopPrank(); - // } + vm.stopPrank(); + } - // function test_mint_phaseNotActive() public { - // vm.startPrank(publisher); - // nft.initDrop( - // PRICE_CURRENCY, - // SUPPLY, - // SHARE_PER_TOKEN, - // MINT_GENESIS, - // genesisRecipient, - // address(royaltyToken), - // address(mockUSDC), - // URI - // ); + function test_mint_phaseNotActive() public { + vm.startPrank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); - // // Set block.timestamp to be before the start of Phase 0 - // vm.warp(P0_START - 1); + // Set block.timestamp to be before the start of Phase 0 + vm.warp(P0_START - 1); - // // Set the phases - // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); - // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - // phases[0] = phase0; - // nft.setDropPhases(phases); + // Set the phases + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); - // vm.stopPrank(); + vm.stopPrank(); - // // Create signature for `alice` dropId 0 and phaseId 0 - // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - // bytes memory kycSignature = _generateKycSignature(alice, 0); + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); - // // Impersonate `alice` - // vm.startPrank(alice); + // Impersonate `alice` + vm.startPrank(alice); - // uint256 mintQty = 4; + uint256 mintQty = 4; - // vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); - // nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); + vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); + nft.mintCoin(alice, PHASE_ID_0, mintQty, signature, kycSignature); - // vm.stopPrank(); - // } + vm.stopPrank(); + } - // function test_mint_notEligible() public { - // vm.startPrank(publisher); - // nft.initDrop( - // PRICE_CURRENCY, - // SUPPLY, - // SHARE_PER_TOKEN, - // MINT_GENESIS, - // genesisRecipient, - // address(royaltyToken), - // address(mockUSDC), - // URI - // ); + function test_mint_notEligible() public { + vm.startPrank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); - // // Set block.timestamp to be after the start of Phase 0 - // vm.warp(P0_START + 1); + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); - // // Set the phases - // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); - // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - // phases[0] = phase0; - // nft.setDropPhases(phases); + // Set the phases + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); - // vm.stopPrank(); + vm.stopPrank(); - // // Impersonate `alice` - // vm.startPrank(alice); + // Impersonate `alice` + vm.startPrank(alice); - // uint256 mintQty = 4; + uint256 mintQty = 4; - // bytes memory invalidSignature = _generateInvalidSignature(alice, address(nft), PHASE_ID_0); - // bytes memory kycSignature = _generateKycSignature(alice, 0); + bytes memory invalidSignature = _generateInvalidSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); - // vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); - // nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); + mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); - // vm.stopPrank(); - // } + vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); + nft.mintCoin(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); - // function test_mint_public() public { - // vm.startPrank(publisher); - // nft.initDrop( - // PRICE_CURRENCY, - // SUPPLY, - // SHARE_PER_TOKEN, - // MINT_GENESIS, - // genesisRecipient, - // address(royaltyToken), - // address(mockUSDC), - // URI - // ); + vm.stopPrank(); + } - // // Set block.timestamp to be after the start of Phase 0 - // vm.warp(P0_START + 1); + function test_mint_public() public { + vm.startPrank(publisher); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); - // // Set the phases - // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PUBLIC_PHASE); - // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - // phases[0] = phase0; - // nft.setDropPhases(phases); + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); - // vm.stopPrank(); + // Set the phases + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PUBLIC_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); - // bytes memory kycSignature = _generateKycSignature(alice, 0); + vm.stopPrank(); - // // Impersonate `alice` - // vm.startPrank(alice); + bytes memory kycSignature = _generateKycSignature(alice, 0); - // uint256 mintQty = 4; + // Impersonate `alice` + vm.startPrank(alice); - // nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, "", kycSignature); + uint256 mintQty = 4; + mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); + nft.mintCoin(alice, PHASE_ID_0, mintQty, "", kycSignature); - // assertEq(nft.balanceOf(alice), mintQty); + assertEq(nft.balanceOf(alice), mintQty); - // vm.stopPrank(); - // } + vm.stopPrank(); + } function test_setSharePerToken_admin(uint256 _newShare) public { vm.assume(_newShare != SHARE_PER_TOKEN); From d1dce2ec8315d2b55a328d72fc9d795d98aaf6c2 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Wed, 29 Nov 2023 14:14:41 +0100 Subject: [PATCH 37/74] draft mintWithPermit function --- forge-cache/solidity-files-cache.json | 5 +- src/token/ERC721/ERC721ABLECoin.sol | 114 ++++++++++++++++++-------- 2 files changed, 84 insertions(+), 35 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 657f614..65d6ed8 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -7224,8 +7224,8 @@ } }, "src/token/ERC721/ERC721ABLECoin.sol": { - "lastModificationDate": 1701165890991, - "contentHash": "9fdce83321419a88d82ff6ed4c6e376c", + "lastModificationDate": 1701263652220, + "contentHash": "68dda49cb1dd913513effb14fafbad34", "sourceName": "src/token/ERC721/ERC721ABLECoin.sol", "solcConfig": { "settings": { @@ -7263,6 +7263,7 @@ "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/utils/Strings.sol", "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", diff --git a/src/token/ERC721/ERC721ABLECoin.sol b/src/token/ERC721/ERC721ABLECoin.sol index 0a3393e..a58b050 100644 --- a/src/token/ERC721/ERC721ABLECoin.sol +++ b/src/token/ERC721/ERC721ABLECoin.sol @@ -37,6 +37,7 @@ pragma solidity ^0.8.18; /* Openzeppelin Contract */ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {IERC20Permit} from "@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol"; /* anotherblock Contract */ import {ERC721AB} from "src/token/ERC721/ERC721AB.sol"; @@ -157,40 +158,34 @@ contract ERC721ABLECoin is ERC721AB { bytes calldata _signature, bytes calldata _kycSignature ) external { - // Perform before mint checks (KYC verification) - _beforeMint(_to, _kycSignature); - - // Check that the requested minting phase has started - if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); - - // Get requested phase details - ABDataTypes.Phase memory phase = phases[_phaseId]; - - // Check that there are enough tokens available for sale - if (_totalMinted() + _quantity > maxSupply) { - revert ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE(); - } - - // Check if the current phase is private - if (!phase.isPublic) { - // Check that the user is included in the allowlist - if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { - revert ABErrors.NOT_ELIGIBLE(); - } - } - - // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase - if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); - - if (!IERC20(mintCurrency).transferFrom(msg.sender, address(this), priceCurrency * _quantity)) { - revert ABErrors.INCORRECT_ETH_SENT(); - } - - // Set quantity minted for `_to` during the current phase - mintedPerPhase[_to][_phaseId] += _quantity; + _mintCoin(_to, _phaseId, _quantity, _signature, _kycSignature); + } - // Mint `_quantity` amount to `_to` address - _mint(_to, _quantity); + /** + * @notice + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid + * + * @param _to token recipient address (must be whitelisted) + * @param _phaseId current minting phase (must be started) + * @param _quantity quantity of tokens requested (must be less than max mint per phase) + * @param _signature signature to verify allowlist status + * @param _kycSignature signature to verify user's KYC status + */ + function mintCoinWithPermit( + address _to, + uint256 _phaseId, + uint256 _quantity, + uint256 deadline, + uint8 v, + bytes32 r, + bytes32 s, + bytes calldata _signature, + bytes calldata _kycSignature + ) external { + IERC20Permit(address(mintCurrency)).permit( + msg.sender, address(this), priceCurrency * _quantity, deadline, v, r, s + ); + _mintCoin(_to, _phaseId, _quantity, _signature, _kycSignature); } // ____ __ ___ __ _ @@ -247,4 +242,57 @@ contract ERC721ABLECoin is ERC721AB { if (_maxSupply < _totalMinted()) revert ABErrors.INVALID_PARAMETER(); maxSupply = _maxSupply; } + + /** + * @notice + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid + * + * @param _to token recipient address (must be whitelisted) + * @param _phaseId current minting phase (must be started) + * @param _quantity quantity of tokens requested (must be less than max mint per phase) + * @param _signature signature to verify allowlist status + * @param _kycSignature signature to verify user's KYC status + */ + function _mintCoin( + address _to, + uint256 _phaseId, + uint256 _quantity, + bytes calldata _signature, + bytes calldata _kycSignature + ) internal { + // Perform before mint checks (KYC verification) + _beforeMint(_to, _kycSignature); + + // Check that the requested minting phase has started + if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); + + // Get requested phase details + ABDataTypes.Phase memory phase = phases[_phaseId]; + + // Check that there are enough tokens available for sale + if (_totalMinted() + _quantity > maxSupply) { + revert ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE(); + } + + // Check if the current phase is private + if (!phase.isPublic) { + // Check that the user is included in the allowlist + if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { + revert ABErrors.NOT_ELIGIBLE(); + } + } + + // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase + if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); + + if (!IERC20(mintCurrency).transferFrom(msg.sender, address(this), priceCurrency * _quantity)) { + revert ABErrors.INCORRECT_ETH_SENT(); + } + + // Set quantity minted for `_to` during the current phase + mintedPerPhase[_to][_phaseId] += _quantity; + + // Mint `_quantity` amount to `_to` address + _mint(_to, _quantity); + } } From b6c13e803469e3ac14698f5e3d8a9b5013cce000 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Thu, 30 Nov 2023 10:59:40 +0100 Subject: [PATCH 38/74] added mintWithPermit test case --- forge-cache/solidity-files-cache.json | 8 ++-- test/_testdata/ERC721ABLECoin.td.sol | 1 + test/token/ERC721/ERC721ABLECoin.t.sol | 57 +++++++++++++++++++++----- 3 files changed, 51 insertions(+), 15 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 65d6ed8..ef636b8 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -8061,8 +8061,8 @@ } }, "test/_testdata/ERC721ABLECoin.td.sol": { - "lastModificationDate": 1701165512839, - "contentHash": "7070e68d1d9c0a9b6cf612cbbf17af05", + "lastModificationDate": 1701337297497, + "contentHash": "f0d8dd13be3eb7c8e35aa6feaaa48280", "sourceName": "test/_testdata/ERC721ABLECoin.td.sol", "solcConfig": { "settings": { @@ -8697,8 +8697,8 @@ } }, "test/token/ERC721/ERC721ABLECoin.t.sol": { - "lastModificationDate": 1701182445724, - "contentHash": "f3dd79aad5784cf315fb686602e8e441", + "lastModificationDate": 1701338109795, + "contentHash": "28c92530a834999c29238371f1eb470b", "sourceName": "test/token/ERC721/ERC721ABLECoin.t.sol", "solcConfig": { "settings": { diff --git a/test/_testdata/ERC721ABLECoin.td.sol b/test/_testdata/ERC721ABLECoin.td.sol index cba5f1c..a131464 100644 --- a/test/_testdata/ERC721ABLECoin.td.sol +++ b/test/_testdata/ERC721ABLECoin.td.sol @@ -18,6 +18,7 @@ contract ERC721ABCoinTestData { uint256 public constant DROP_SPECIFIC_FEE = 5_000; uint256 public constant PRICE = 0.1 ether; uint256 public constant PRICE_CURRENCY = 100e18; + uint256 public constant PRICE_USDC = 100e6; uint256 public constant SUPPLY = 5; uint256 public constant SHARE_PER_TOKEN = 90_000; diff --git a/test/token/ERC721/ERC721ABLECoin.t.sol b/test/token/ERC721/ERC721ABLECoin.t.sol index 1bdc589..f52418c 100644 --- a/test/token/ERC721/ERC721ABLECoin.t.sol +++ b/test/token/ERC721/ERC721ABLECoin.t.sol @@ -2,6 +2,7 @@ pragma solidity ^0.8.18; import "forge-std/Test.sol"; +import "forge-std/StdUtils.sol"; import {ERC721ABLECoin} from "src/token/ERC721/ERC721ABLECoin.sol"; import {ERC1155AB} from "src/token/ERC1155/ERC1155AB.sol"; @@ -36,9 +37,10 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { /* Users */ address payable public alice; + uint256 public alicePkey = 1; address payable public bob; - address payable public karen; - address payable public dave; + uint256 public bobPkey = 2; + address payable public publisher; /* Contracts */ @@ -60,6 +62,10 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { ERC721ABLECoin public nft; uint256 public constant DROP_ID_OFFSET = 10_000; + bytes32 public constant DOMAIN_SEPARATOR = 0x02fa7265e7c5d81118673727957699e4d68f74cd74b7db77da710fe8a2c7834f; + bytes32 public constant PERMIT_TYPEHASH = 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9; + + address public constant BASE_USDC = 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913; /* Environment Variables */ string BASE_RPC_URL = vm.envString("BASE_RPC"); @@ -73,29 +79,25 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { genesisRecipient = vm.addr(100); /* Setup users */ - alice = payable(vm.addr(1)); - bob = payable(vm.addr(2)); - karen = payable(vm.addr(3)); - dave = payable(vm.addr(4)); + alice = payable(vm.addr(alicePkey)); + bob = payable(vm.addr(bobPkey)); publisher = payable(vm.addr(5)); treasury = payable(vm.addr(1000)); vm.deal(alice, 100 ether); + deal(address(BASE_USDC), alice, 1000e6); vm.deal(bob, 100 ether); - vm.deal(karen, 100 ether); - vm.deal(dave, 100 ether); + deal(address(BASE_USDC), bob, 1000e6); vm.label(alice, "alice"); vm.label(bob, "bob"); - vm.label(karen, "karen"); - vm.label(dave, "dave"); vm.label(publisher, "publisher"); vm.label(treasury, "treasury"); /* Contracts Deployments */ proxyAdmin = new ProxyAdmin(); - mockUSDC = new MockToken(MOCK_TOKEN_NAME, MOCK_TOKEN_SYMBOL); + vm.label(address(mockUSDC), "mockUSDC"); mockUSDC.mint(alice, 1000e18); mockUSDC.mint(bob, 1000e18); @@ -927,6 +929,39 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { vm.stopPrank(); } + function test_mintCoinWithPermit() public { + vm.startPrank(publisher); + + nft.initDrop( + PRICE_USDC, SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), BASE_USDC, URI + ); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + vm.stopPrank(); + + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + bytes32 hashStruct = keccak256(abi.encode(PERMIT_TYPEHASH, alice, address(nft), PRICE_USDC, 0, 1e18 days)); + bytes32 digest = keccak256(abi.encodePacked("\x19\x01", DOMAIN_SEPARATOR, hashStruct)); + + (uint8 v, bytes32 r, bytes32 s) = vm.sign(alicePkey, digest); + + // Impersonate `alice` + vm.prank(alice); + nft.mintCoinWithPermit(alice, PHASE_ID_0, 1, 1e18 days, v, r, s, signature, kycSignature); + + assertEq(nft.balanceOf(alice), 1); + } + function test_setSharePerToken_admin(uint256 _newShare) public { vm.assume(_newShare != SHARE_PER_TOKEN); vm.assume(_newShare < 1_000_000); From de60f6678c99b1627dd37601a8c2e8c2d4758512 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Thu, 30 Nov 2023 14:44:06 +0100 Subject: [PATCH 39/74] added coverage --- forge-cache/solidity-files-cache.json | 4 +- test/token/ERC721/ERC721ABLECoin.t.sol | 182 ++++++++++++++----------- 2 files changed, 103 insertions(+), 83 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index ef636b8..02006bf 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -8697,8 +8697,8 @@ } }, "test/token/ERC721/ERC721ABLECoin.t.sol": { - "lastModificationDate": 1701338109795, - "contentHash": "28c92530a834999c29238371f1eb470b", + "lastModificationDate": 1701351765495, + "contentHash": "a1020d6757a8b89327a2b1eda4ed56ac", "sourceName": "test/token/ERC721/ERC721ABLECoin.t.sol", "solcConfig": { "settings": { diff --git a/test/token/ERC721/ERC721ABLECoin.t.sol b/test/token/ERC721/ERC721ABLECoin.t.sol index f52418c..52a7bd9 100644 --- a/test/token/ERC721/ERC721ABLECoin.t.sol +++ b/test/token/ERC721/ERC721ABLECoin.t.sol @@ -1037,118 +1037,138 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { nft.withdrawERC20(address(mockUSDC), 10e18); } - // function test_withdrawToRightholder(uint256 _amount) public { - // vm.assume(_amount > 10); - // vm.assume(_amount < 1e30); - // vm.deal(address(nft), _amount); + function test_withdrawToRightholder(uint256 _amount) public { + vm.assume(_amount > 10); + vm.assume(_amount < 1e30); + vm.deal(address(nft), _amount); - // vm.prank(publisher); - // nft.withdrawToRightholder(); + vm.prank(publisher); + nft.withdrawToRightholder(); - // uint256 expectedPublisherBalance = _amount * PUBLISHER_FEE / 10_000; - // uint256 expectedTreasuryBalance = _amount - expectedPublisherBalance; + uint256 expectedPublisherBalance = _amount * PUBLISHER_FEE / 10_000; + uint256 expectedTreasuryBalance = _amount - expectedPublisherBalance; - // assertEq(treasury.balance, expectedTreasuryBalance); - // assertEq(publisher.balance, expectedPublisherBalance); - // } + assertEq(treasury.balance, expectedTreasuryBalance); + assertEq(publisher.balance, expectedPublisherBalance); + } - // function test_withdrawToRightholder_allToPublisher(uint256 _amount) public { - // vm.assume(_amount > 10); - // vm.assume(_amount < 1e30); - // vm.deal(address(nft), _amount); + function test_withdrawToRightholder_allToPublisher(uint256 _amount) public { + vm.assume(_amount > 10); + vm.assume(_amount < 1e30); + vm.deal(address(nft), _amount); - // abDataRegistry.setPublisherFee(publisher, 10_000); + abDataRegistry.setPublisherFee(publisher, 10_000); - // vm.prank(publisher); - // nft.withdrawToRightholder(); + vm.prank(publisher); + nft.withdrawToRightholder(); - // uint256 expectedPublisherBalance = _amount; - // uint256 expectedTreasuryBalance = 0; + uint256 expectedPublisherBalance = _amount; + uint256 expectedTreasuryBalance = 0; - // assertEq(treasury.balance, expectedTreasuryBalance); - // assertEq(publisher.balance, expectedPublisherBalance); - // } + assertEq(treasury.balance, expectedTreasuryBalance); + assertEq(publisher.balance, expectedPublisherBalance); + } - // function test_withdrawToRightholder_allToTreasury(uint256 _amount) public { - // vm.assume(_amount > 10); - // vm.assume(_amount < 1e30); - // vm.deal(address(nft), _amount); + function test_withdrawToRightholder_allToTreasury(uint256 _amount) public { + vm.assume(_amount > 10); + vm.assume(_amount < 1e30); + vm.deal(address(nft), _amount); - // abDataRegistry.setPublisherFee(publisher, 0); + abDataRegistry.setPublisherFee(publisher, 0); - // vm.prank(publisher); - // nft.withdrawToRightholder(); + vm.prank(publisher); + nft.withdrawToRightholder(); - // uint256 expectedPublisherBalance = 0; - // uint256 expectedTreasuryBalance = _amount; + uint256 expectedPublisherBalance = 0; + uint256 expectedTreasuryBalance = _amount; - // assertEq(treasury.balance, expectedTreasuryBalance); - // assertEq(publisher.balance, expectedPublisherBalance); - // } + assertEq(treasury.balance, expectedTreasuryBalance); + assertEq(publisher.balance, expectedPublisherBalance); + } - // function test_withdrawToRightholder_dropSpecific_allToPublisher(uint256 _amount) public { - // vm.assume(_amount > 10); - // vm.assume(_amount < 1e30); - // vm.deal(address(nft), _amount); + function test_withdrawToRightholder_dropSpecific_allToPublisher(uint256 _amount) public { + vm.assume(_amount > 10); + vm.assume(_amount < 1e30); + vm.deal(address(nft), _amount); - // vm.prank(publisher); - // nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + vm.prank(publisher); - // abDataRegistry.setDropFee(true, nft.dropId(), 10_000); + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); - // vm.prank(publisher); - // nft.withdrawToRightholder(); + abDataRegistry.setDropFee(true, nft.dropId(), 10_000); - // uint256 expectedPublisherBalance = _amount; - // uint256 expectedTreasuryBalance = 0; + vm.prank(publisher); + nft.withdrawToRightholder(); - // assertEq(treasury.balance, expectedTreasuryBalance); - // assertEq(publisher.balance, expectedPublisherBalance); - // } + uint256 expectedPublisherBalance = _amount; + uint256 expectedTreasuryBalance = 0; - // function test_withdrawToRightholder_dropSpecific_allToTreasury(uint256 _amount) public { - // vm.assume(_amount > 10); - // vm.assume(_amount < 1e30); - // vm.deal(address(nft), _amount); + assertEq(treasury.balance, expectedTreasuryBalance); + assertEq(publisher.balance, expectedPublisherBalance); + } - // vm.prank(publisher); - // nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + function test_withdrawToRightholder_dropSpecific_allToTreasury(uint256 _amount) public { + vm.assume(_amount > 10); + vm.assume(_amount < 1e30); + vm.deal(address(nft), _amount); - // abDataRegistry.setDropFee(true, nft.dropId(), 0); + vm.prank(publisher); + + nft.initDrop( + PRICE_CURRENCY, + SUPPLY, + SHARE_PER_TOKEN, + MINT_GENESIS, + genesisRecipient, + address(royaltyToken), + address(mockUSDC), + URI + ); + + abDataRegistry.setDropFee(true, nft.dropId(), 0); - // vm.prank(publisher); - // nft.withdrawToRightholder(); + vm.prank(publisher); + nft.withdrawToRightholder(); - // uint256 expectedPublisherBalance = 0; - // uint256 expectedTreasuryBalance = _amount; + uint256 expectedPublisherBalance = 0; + uint256 expectedTreasuryBalance = _amount; - // assertEq(treasury.balance, expectedTreasuryBalance); - // assertEq(publisher.balance, expectedPublisherBalance); - // } + assertEq(treasury.balance, expectedTreasuryBalance); + assertEq(publisher.balance, expectedPublisherBalance); + } - // function test_withdrawToRightholder_invalidParameter(uint256 _amount) public { - // vm.assume(_amount > 10); - // vm.assume(_amount < 1e30); - // vm.deal(address(nft), _amount); + function test_withdrawToRightholder_invalidParameter(uint256 _amount) public { + vm.assume(_amount > 10); + vm.assume(_amount < 1e30); + vm.deal(address(nft), _amount); - // abDataRegistry.setTreasury(address(0)); + abDataRegistry.setTreasury(address(0)); - // vm.prank(publisher); - // vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); - // nft.withdrawToRightholder(); - // } + vm.prank(publisher); + vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); + nft.withdrawToRightholder(); + } - // function test_withdrawToRightholder_nonAdmin(address _sender, uint256 _amount) public { - // vm.assume(_amount > 10); - // vm.assume(_amount < 1e30); - // vm.assume(nft.owner() != _sender); + function test_withdrawToRightholder_nonAdmin(address _sender, uint256 _amount) public { + vm.assume(_amount > 10); + vm.assume(_amount < 1e30); + vm.assume(nft.owner() != _sender); - // vm.deal(address(nft), _amount); + vm.deal(address(nft), _amount); - // vm.prank(_sender); - // vm.expectRevert(); - // nft.withdrawToRightholder(); - // } + vm.prank(_sender); + vm.expectRevert(); + nft.withdrawToRightholder(); + } function test_setMaxSupply() public { vm.startPrank(publisher); From 5c8eb445db0745301712ed20bacd3c9bceda8276 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Fri, 1 Dec 2023 10:37:41 +0100 Subject: [PATCH 40/74] latest coverage report --- lcov.info | 601 +++++++++++++++++++++++++++--------------------------- 1 file changed, 305 insertions(+), 296 deletions(-) diff --git a/lcov.info b/lcov.info index 289c877..a03341a 100644 --- a/lcov.info +++ b/lcov.info @@ -526,20 +526,20 @@ end_of_record TN: SF:src/factory/AnotherCloneFactory.sol FN:118,AnotherCloneFactory.initialize -FNDA:182,AnotherCloneFactory.initialize -DA:125,181 -DA:126,181 -DA:127,181 -DA:128,181 -DA:129,181 -DA:131,181 -DA:134,181 -DA:135,181 +FNDA:228,AnotherCloneFactory.initialize +DA:125,227 +DA:126,227 +DA:127,227 +DA:128,227 +DA:129,227 +DA:131,227 +DA:134,227 +DA:135,227 FN:152,AnotherCloneFactory.createCollection721 -FNDA:814,AnotherCloneFactory.createCollection721 -DA:154,558 -DA:157,558 -DA:160,558 +FNDA:860,AnotherCloneFactory.createCollection721 +DA:154,604 +DA:157,604 +DA:160,604 FN:170,AnotherCloneFactory.createCollection1155 FNDA:810,AnotherCloneFactory.createCollection1155 DA:172,554 @@ -564,17 +564,17 @@ BRDA:233,2,1,256 DA:236,256 DA:239,256 FN:250,AnotherCloneFactory.createPublisherProfile -FNDA:3735,AnotherCloneFactory.createPublisherProfile -DA:252,3479 +FNDA:3781,AnotherCloneFactory.createPublisherProfile +DA:252,3525 BRDA:252,3,0,256 -BRDA:252,3,1,3223 -DA:255,3223 +BRDA:252,3,1,3269 +DA:255,3269 BRDA:255,4,0,256 -BRDA:255,4,1,2967 -DA:258,2967 -DA:261,2967 -DA:264,2967 -DA:267,2967 +BRDA:255,4,1,3013 +DA:258,3013 +DA:261,3013 +DA:264,3013 +DA:267,3013 FN:277,AnotherCloneFactory.revokePublisherAccess FNDA:512,AnotherCloneFactory.revokePublisherAccess DA:279,256 @@ -588,8 +588,8 @@ FN:311,AnotherCloneFactory.setABRoyaltyImplementation FNDA:257,AnotherCloneFactory.setABRoyaltyImplementation DA:312,1 FN:322,AnotherCloneFactory.setABKYCModule -FNDA:109,AnotherCloneFactory.setABKYCModule -DA:323,109 +FNDA:155,AnotherCloneFactory.setABKYCModule +DA:323,155 FN:340,AnotherCloneFactory.predictERC721Address FNDA:256,AnotherCloneFactory.predictERC721Address DA:341,256 @@ -603,11 +603,11 @@ FN:382,AnotherCloneFactory.hasPublisherRole FNDA:512,AnotherCloneFactory.hasPublisherRole DA:383,512 FN:391,AnotherCloneFactory._setupCollection -FNDA:1662,AnotherCloneFactory._setupCollection -DA:393,1662 -DA:396,1662 -DA:399,1662 -DA:402,1662 +FNDA:1708,AnotherCloneFactory._setupCollection +DA:393,1708 +DA:396,1708 +DA:399,1708 +DA:402,1708 FNF:16 FNH:16 LF:41 @@ -618,13 +618,13 @@ end_of_record TN: SF:src/royalty/ABRoyalty.sol FN:109,ABRoyalty.initialize -FNDA:2996,ABRoyalty.initialize -DA:111,2995 -DA:112,2995 -DA:113,2995 -DA:114,2995 -DA:117,2995 -DA:120,2995 +FNDA:3042,ABRoyalty.initialize +DA:111,3041 +DA:112,3041 +DA:113,3041 +DA:114,3041 +DA:117,3041 +DA:120,3041 FN:136,ABRoyalty.claimPayout FNDA:256,ABRoyalty.claimPayout DA:137,256 @@ -674,14 +674,14 @@ DA:264,512 DA:267,512 DA:269,1024 FN:290,ABRoyalty.initPayoutIndex -FNDA:9046,ABRoyalty.initPayoutIndex -DA:294,8790 -DA:295,8790 +FNDA:9865,ABRoyalty.initPayoutIndex +DA:294,9609 +DA:295,9609 BRDA:295,3,0,- -BRDA:295,3,1,8790 +BRDA:295,3,1,9609 DA:296,0 -DA:298,8790 -DA:299,8790 +DA:298,9609 +DA:299,9609 FN:312,ABRoyalty.updatePayout1155 FNDA:1845,ABRoyalty.updatePayout1155 DA:318,1589 @@ -692,15 +692,15 @@ DA:321,1333 DA:323,2617 DA:326,2617 FN:340,ABRoyalty.updatePayout721 -FNDA:9255,ABRoyalty.updatePayout721 -DA:345,8999 -DA:348,8999 +FNDA:10077,ABRoyalty.updatePayout721 +DA:345,9821 +DA:348,9821 FN:359,ABRoyalty.distributeOnBehalf FNDA:256,ABRoyalty.distributeOnBehalf DA:360,256 FN:378,ABRoyalty.getUserSubscription -FNDA:5632,ABRoyalty.getUserSubscription -DA:380,5632 +FNDA:5406,ABRoyalty.getUserSubscription +DA:380,5406 FN:392,ABRoyalty.getClaimableAmount FNDA:256,ABRoyalty.getClaimableAmount DA:394,256 @@ -708,18 +708,18 @@ FN:407,ABRoyalty.getIndexInfo FNDA:256,ABRoyalty.getIndexInfo DA:412,256 FN:430,ABRoyalty._gainShare -FNDA:11616,ABRoyalty._gainShare -DA:432,11616 -BRDA:432,5,0,10848 -BRDA:432,5,1,11616 -DA:435,10848 -DA:436,10848 -DA:439,10848 +FNDA:12438,ABRoyalty._gainShare +DA:432,12438 +BRDA:432,5,0,11670 +BRDA:432,5,1,12438 +DA:435,11670 +DA:436,11670 +DA:439,11670 FN:452,ABRoyalty._loseShare -FNDA:11616,ABRoyalty._loseShare -DA:454,11616 +FNDA:12438,ABRoyalty._loseShare +DA:454,12438 BRDA:454,6,0,1792 -BRDA:454,6,1,11616 +BRDA:454,6,1,12438 DA:457,1792 DA:458,1792 DA:461,1792 @@ -953,129 +953,129 @@ end_of_record TN: SF:src/token/ERC721/ERC721AB.sol FN:116,ERC721AB.initialize -FNDA:1112,ERC721AB.initialize -DA:124,1110 -DA:127,1110 -DA:128,1110 -DA:130,1110 -DA:133,1110 -DA:136,1110 -DA:139,1110 -DA:142,1110 +FNDA:1160,ERC721AB.initialize +DA:124,1157 +DA:127,1157 +DA:128,1157 +DA:130,1157 +DA:133,1157 +DA:136,1157 +DA:139,1157 +DA:142,1157 FN:159,ERC721AB.setBaseURI -FNDA:4,ERC721AB.setBaseURI -DA:160,2 +FNDA:6,ERC721AB.setBaseURI +DA:160,3 FN:170,ERC721AB.setSharePerToken -FNDA:1024,ERC721AB.setSharePerToken -DA:171,512 +FNDA:1536,ERC721AB.setSharePerToken +DA:171,768 FN:182,ERC721AB.setDropPhases -FNDA:29,ERC721AB.setDropPhases -DA:184,27 -BRDA:184,0,0,4 -BRDA:184,0,1,27 -DA:185,4 -DA:188,27 -DA:190,27 -DA:192,27 -DA:193,41 -DA:196,41 -BRDA:196,1,0,2 -BRDA:196,1,1,39 -DA:197,2 -DA:200,39 -DA:201,39 -DA:204,25 +FNDA:45,ERC721AB.setDropPhases +DA:184,42 +BRDA:184,0,0,6 +BRDA:184,0,1,42 +DA:185,6 +DA:188,42 +DA:190,42 +DA:192,42 +DA:193,63 +DA:196,63 +BRDA:196,1,0,3 +BRDA:196,1,1,60 +DA:197,3 +DA:200,60 +DA:201,60 +DA:204,39 FN:213,ERC721AB.withdrawToRightholder -FNDA:3072,ERC721AB.withdrawToRightholder -DA:214,2560 -DA:216,2560 -BRDA:216,2,0,512 -BRDA:216,2,1,2048 -DA:218,2048 -DA:219,2048 -DA:220,2048 -DA:222,2048 +FNDA:4864,ERC721AB.withdrawToRightholder +DA:214,4096 +DA:216,4096 +BRDA:216,2,0,768 +BRDA:216,2,1,3328 +DA:218,3328 +DA:219,3328 +DA:220,3328 +DA:222,3328 BRDA:222,3,0,- -BRDA:222,3,1,1280 -DA:223,1280 -DA:224,1280 +BRDA:222,3,1,2048 +DA:223,2048 +DA:224,2048 BRDA:224,4,0,- -BRDA:224,4,1,1280 -DA:227,2048 +BRDA:224,4,1,2048 +DA:227,3328 BRDA:227,5,0,- -BRDA:227,5,1,1280 -DA:228,1280 -DA:229,1280 +BRDA:227,5,1,2048 +DA:228,2048 +DA:229,2048 BRDA:229,6,0,- -BRDA:229,6,1,1280 +BRDA:229,6,1,2048 FN:241,ERC721AB.withdrawERC20 -FNDA:514,ERC721AB.withdrawERC20 -DA:243,2 +FNDA:771,ERC721AB.withdrawERC20 +DA:243,3 FN:252,ERC721AB.supportsInterface FNDA:0,ERC721AB.supportsInterface DA:253,0 FN:262,ERC721AB.symbol -FNDA:4,ERC721AB.symbol -DA:263,4 -BRDA:263,7,0,2 -BRDA:263,7,1,4 -DA:264,2 +FNDA:6,ERC721AB.symbol +DA:263,6 +BRDA:263,7,0,3 +BRDA:263,7,1,6 +DA:264,3 FN:276,ERC721AB.tokenURI -FNDA:16,ERC721AB.tokenURI -DA:277,16 -BRDA:277,8,0,2 -BRDA:277,8,1,14 -DA:279,14 -DA:281,14 -BRDA:281,9,0,2 -BRDA:281,9,1,12 -DA:282,2 -DA:284,12 -DA:286,12 -DA:287,12 -DA:289,12 -BRDA:289,10,0,10 -BRDA:289,10,1,2 -DA:290,10 -DA:292,2 +FNDA:24,ERC721AB.tokenURI +DA:277,24 +BRDA:277,8,0,3 +BRDA:277,8,1,21 +DA:279,21 +DA:281,21 +BRDA:281,9,0,3 +BRDA:281,9,1,18 +DA:282,3 +DA:284,18 +DA:286,18 +DA:287,18 +DA:289,18 +BRDA:289,10,0,15 +BRDA:289,10,1,3 +DA:290,15 +DA:292,3 FN:314,ERC721AB._initDrop -FNDA:1581,ERC721AB._initDrop -DA:322,1581 -BRDA:322,11,0,2 -BRDA:322,11,1,1579 -DA:326,1579 -BRDA:325,12,0,4 -BRDA:325,12,1,1575 -DA:328,4 -DA:331,1575 -DA:334,1575 -DA:337,1575 -DA:340,1575 -BRDA:340,13,0,1571 -BRDA:340,13,1,1575 -DA:341,1571 +FNDA:2630,ERC721AB._initDrop +DA:322,2630 +BRDA:322,11,0,3 +BRDA:322,11,1,2627 +DA:326,2627 +BRDA:325,12,0,6 +BRDA:325,12,1,2621 +DA:328,6 +DA:331,2621 +DA:334,2621 +DA:337,2621 +DA:340,2621 +BRDA:340,13,0,2615 +BRDA:340,13,1,2621 +DA:341,2615 FN:353,ERC721AB._isPhaseActive -FNDA:19,ERC721AB._isPhaseActive -DA:355,19 -BRDA:355,14,0,2 -BRDA:355,14,1,17 -DA:356,17 -DA:358,17 +FNDA:30,ERC721AB._isPhaseActive +DA:355,30 +BRDA:355,14,0,3 +BRDA:355,14,1,27 +DA:356,27 +DA:358,27 FN:367,ERC721AB._baseURI -FNDA:14,ERC721AB._baseURI -DA:368,14 +FNDA:21,ERC721AB._baseURI +DA:368,21 FN:377,ERC721AB._startTokenId -FNDA:1138,ERC721AB._startTokenId -DA:378,1138 +FNDA:1204,ERC721AB._startTokenId +DA:378,1204 FN:381,ERC721AB._beforeMint -FNDA:19,ERC721AB._beforeMint -DA:382,19 +FNDA:30,ERC721AB._beforeMint +DA:382,30 FN:385,ERC721AB._beforeTokenTransfers -FNDA:1577,ERC721AB._beforeTokenTransfers -DA:389,1577 +FNDA:2626,ERC721AB._beforeTokenTransfers +DA:389,2626 BRDA:389,15,0,- -BRDA:389,15,1,1575 -DA:390,1575 +BRDA:389,15,1,2623 +DA:390,2623 FNF:15 FNH:14 LF:62 @@ -1133,78 +1133,87 @@ BRH:16 end_of_record TN: SF:src/token/ERC721/ERC721ABLECoin.sol -FN:100,ERC721ABLECoin.mintETH +FN:102,ERC721ABLECoin.mintETH FNDA:0,ERC721ABLECoin.mintETH -DA:102,0 -BRDA:102,0,0,- -BRDA:102,0,1,- -DA:105,0 -DA:108,0 -BRDA:108,1,0,- -BRDA:108,1,1,- -DA:109,0 +DA:110,0 DA:113,0 -BRDA:113,2,0,- -BRDA:113,2,1,- -DA:115,0 -BRDA:115,3,0,- -BRDA:115,3,1,- +BRDA:113,0,0,- +BRDA:113,0,1,- DA:116,0 -DA:121,0 -BRDA:121,4,0,- -BRDA:121,4,1,- +DA:119,0 +BRDA:119,1,0,- +BRDA:119,1,1,- +DA:120,0 DA:124,0 -BRDA:124,5,0,- -BRDA:124,5,1,- +BRDA:124,2,0,- +BRDA:124,2,1,- +DA:126,0 +BRDA:126,3,0,- +BRDA:126,3,1,- DA:127,0 -DA:130,0 -FN:142,ERC721ABLECoin.mintCoin -FNDA:0,ERC721ABLECoin.mintCoin -DA:144,0 -BRDA:144,6,0,- -BRDA:144,6,1,- -DA:147,0 -DA:150,0 -BRDA:150,7,0,- -BRDA:150,7,1,- -DA:151,0 -DA:155,0 -BRDA:155,8,0,- -BRDA:155,8,1,- -DA:157,0 -BRDA:157,9,0,- -BRDA:157,9,1,- -DA:158,0 -DA:163,0 -BRDA:163,10,0,- -BRDA:163,10,1,- -DA:165,0 -BRDA:165,11,0,- -BRDA:165,11,1,- -DA:166,0 -DA:170,0 -DA:173,0 -FN:196,ERC721ABLECoin.initDrop -FNDA:0,ERC721ABLECoin.initDrop -DA:207,0 -DA:210,0 -DA:213,0 -DA:214,0 -BRDA:214,12,0,- -BRDA:214,12,1,- -DA:216,0 -FN:226,ERC721ABLECoin.setMaxSupply -FNDA:0,ERC721ABLECoin.setMaxSupply -DA:227,0 -BRDA:227,13,0,- -BRDA:227,13,1,- -DA:228,0 -FNF:4 -FNH:0 -LF:30 -LH:0 +DA:132,0 +BRDA:132,4,0,- +BRDA:132,4,1,- +DA:135,0 +BRDA:135,5,0,- +BRDA:135,5,1,- +DA:138,0 +DA:141,0 +FN:154,ERC721ABLECoin.mintCoin +FNDA:10,ERC721ABLECoin.mintCoin +DA:161,10 +FN:174,ERC721ABLECoin.mintCoinWithPermit +FNDA:1,ERC721ABLECoin.mintCoinWithPermit +DA:185,1 +DA:188,1 +FN:211,ERC721ABLECoin.initDrop +FNDA:1051,ERC721ABLECoin.initDrop +DA:222,1050 +DA:225,1050 +DA:228,1050 +DA:229,1050 +BRDA:229,6,0,1 +BRDA:229,6,1,1049 +DA:231,1049 +FN:241,ERC721ABLECoin.setMaxSupply +FNDA:2,ERC721ABLECoin.setMaxSupply +DA:242,2 +BRDA:242,7,0,1 +BRDA:242,7,1,1 +DA:243,1 +FN:256,ERC721ABLECoin._mintCoin +FNDA:11,ERC721ABLECoin._mintCoin +DA:264,11 +DA:267,11 +BRDA:267,8,0,1 +BRDA:267,8,1,9 +DA:270,9 +DA:273,9 +BRDA:273,9,0,2 +BRDA:273,9,1,7 +DA:274,2 +DA:278,7 +BRDA:278,10,0,1 +BRDA:278,10,1,5 +DA:280,6 +BRDA:280,11,0,1 +BRDA:280,11,1,5 +DA:281,1 +DA:286,6 +BRDA:286,12,0,1 +BRDA:286,12,1,5 +DA:288,5 +BRDA:288,13,0,- +BRDA:288,13,1,5 +DA:289,0 +DA:293,5 +DA:296,5 +FNF:6 +FNH:5 +LF:35 +LH:22 BRF:28 -BRH:0 +BRH:15 end_of_record TN: SF:src/token/ERC721/ERC721ABOE.sol @@ -1242,61 +1251,61 @@ end_of_record TN: SF:src/utils/ABDataRegistry.sol FN:110,ABDataRegistry.initialize -FNDA:209,ABDataRegistry.initialize -DA:112,208 -DA:113,208 -DA:115,208 -DA:116,208 -DA:118,208 +FNDA:255,ABDataRegistry.initialize +DA:112,254 +DA:113,254 +DA:115,254 +DA:116,254 +DA:118,254 FN:139,ABDataRegistry.registerDrop -FNDA:2904,ABDataRegistry.registerDrop -DA:145,2648 -DA:148,2648 -DA:151,2648 -DA:153,2648 +FNDA:3950,ABDataRegistry.registerDrop +DA:145,3694 +DA:148,3694 +DA:151,3694 +DA:153,3694 BRDA:153,0,0,- -BRDA:153,0,1,2390 -DA:155,2390 +BRDA:153,0,1,3435 +DA:155,3435 FN:170,ABDataRegistry.on721TokenTransfer -FNDA:2087,ABDataRegistry.on721TokenTransfer -DA:174,2087 -DA:175,2087 +FNDA:3135,ABDataRegistry.on721TokenTransfer +DA:174,3135 +DA:175,3135 FN:190,ABDataRegistry.on1155TokenTransfer FNDA:53,ABDataRegistry.on1155TokenTransfer DA:197,53 DA:198,53 FN:218,ABDataRegistry.registerPublisher -FNDA:7063,ABDataRegistry.registerPublisher -DA:222,6807 +FNDA:7109,ABDataRegistry.registerPublisher +DA:222,6853 BRDA:222,1,0,256 -BRDA:222,1,1,6551 -DA:225,6551 -DA:228,6551 -DA:231,6551 +BRDA:222,1,1,6597 +DA:225,6597 +DA:228,6597 +DA:231,6597 FN:242,ABDataRegistry.grantCollectionRole -FNDA:2174,ABDataRegistry.grantCollectionRole -DA:244,1918 +FNDA:2220,ABDataRegistry.grantCollectionRole +DA:244,1964 FN:263,ABDataRegistry.distributeOnBehalf -FNDA:768,ABDataRegistry.distributeOnBehalf -DA:267,512 -DA:268,512 -BRDA:268,2,0,256 +FNDA:572,ABDataRegistry.distributeOnBehalf +DA:267,316 +DA:268,316 +BRDA:268,2,0,60 BRDA:268,2,1,256 DA:269,256 FN:279,ABDataRegistry.setTreasury -FNDA:1280,ABDataRegistry.setTreasury -DA:280,1024 +FNDA:1536,ABDataRegistry.setTreasury +DA:280,1280 FN:291,ABDataRegistry.setPublisherFee -FNDA:1792,ABDataRegistry.setPublisherFee -DA:292,1792 -DA:293,1792 +FNDA:2304,ABDataRegistry.setPublisherFee +DA:292,2304 +DA:293,2304 FN:305,ABDataRegistry.setDropFee -FNDA:1536,ABDataRegistry.setDropFee -DA:306,1280 +FNDA:2048,ABDataRegistry.setDropFee +DA:306,1792 BRDA:306,3,0,256 -BRDA:306,3,1,1024 -DA:307,1024 -DA:308,1024 +BRDA:306,3,1,1536 +DA:307,1536 +DA:308,1536 FN:319,ABDataRegistry.updatePublisher FNDA:768,ABDataRegistry.updatePublisher DA:320,512 @@ -1313,16 +1322,16 @@ FN:362,ABDataRegistry.getPublisherFee FNDA:512,ABDataRegistry.getPublisherFee DA:363,512 FN:376,ABDataRegistry.getPayoutDetails -FNDA:4096,ABDataRegistry.getPayoutDetails -DA:381,4096 -BRDA:381,5,0,768 -BRDA:381,5,1,3328 -DA:382,768 -DA:384,3328 -DA:386,4096 +FNDA:5632,ABDataRegistry.getPayoutDetails +DA:381,5632 +BRDA:381,5,0,1280 +BRDA:381,5,1,4352 +DA:382,1280 +DA:384,4352 +DA:386,5632 FN:401,ABDataRegistry._getNextDropId -FNDA:2648,ABDataRegistry._getNextDropId -DA:402,2648 +FNDA:3694,ABDataRegistry._getNextDropId +DA:402,3694 FNF:16 FNH:16 LF:38 @@ -1333,15 +1342,15 @@ end_of_record TN: SF:src/utils/ABKYCModule.sol FN:94,ABKYCModule.initialize -FNDA:136,ABKYCModule.initialize -DA:95,136 +FNDA:182,ABKYCModule.initialize +DA:95,182 BRDA:95,0,0,- -BRDA:95,0,1,136 -DA:96,136 -DA:99,136 -DA:100,136 +BRDA:95,0,1,182 +DA:96,182 +DA:99,182 +DA:100,182 FN:116,ABKYCModule.beforeMint -FNDA:19,ABKYCModule.beforeMint +FNDA:30,ABKYCModule.beforeMint FN:131,ABKYCModule.beforeTransfer FNDA:0,ABKYCModule.beforeTransfer FN:140,ABKYCModule.beforeRoyaltyClaim @@ -1376,22 +1385,22 @@ end_of_record TN: SF:src/utils/ABVerifier.sol FN:97,ABVerifier.initialize -FNDA:201,ABVerifier.initialize -DA:98,200 +FNDA:247,ABVerifier.initialize +DA:98,246 BRDA:98,0,0,1 -BRDA:98,0,1,199 -DA:99,199 -DA:102,199 -DA:103,199 +BRDA:98,0,1,245 +DA:99,245 +DA:102,245 +DA:103,245 FN:121,ABVerifier.verifySignatureKYC FNDA:0,ABVerifier.verifySignatureKYC DA:122,0 DA:125,0 FN:139,ABVerifier.verifySignature721 -FNDA:525,ABVerifier.verifySignature721 -DA:144,525 -DA:146,525 -DA:151,525 +FNDA:531,ABVerifier.verifySignature721 +DA:144,531 +DA:146,531 +DA:151,531 FN:166,ABVerifier.verifySignature1155 FNDA:788,ABVerifier.verifySignature1155 DA:173,788 @@ -1413,12 +1422,12 @@ FN:244,ABVerifier.getSigner FNDA:4,ABVerifier.getSigner DA:245,4 FN:262,ABVerifier._getSigner -FNDA:1317,ABVerifier._getSigner -DA:263,1317 -DA:264,1317 -DA:265,1317 +FNDA:1323,ABVerifier._getSigner +DA:263,1323 +DA:264,1323 +DA:265,1323 BRDA:265,1,0,2 -BRDA:265,1,1,1317 +BRDA:265,1,1,1323 DA:266,2 FNF:10 FNH:7 @@ -1474,8 +1483,8 @@ end_of_record TN: SF:test/_mocks/MockToken.sol FN:12,MockToken.mint -FNDA:252,MockToken.mint -DA:13,252 +FNDA:344,MockToken.mint +DA:13,344 FNF:1 FNH:1 LF:1 From fdefa56e3718680f3865133921878b544d306ae8 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Mon, 4 Dec 2023 11:15:00 +0100 Subject: [PATCH 41/74] added `withdrawERC20ToRightholder` function --- forge-cache/solidity-files-cache.json | 32 ++++++++++----------- src/token/ERC721/ERC721AB.sol | 2 +- src/token/ERC721/ERC721ABLECoin.sol | 40 +++++++++++++++++++++++++++ 3 files changed, 57 insertions(+), 17 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 02006bf..2850e61 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -4809,7 +4809,7 @@ } }, "script/base/deploy-v1_1.s.sol": { - "lastModificationDate": 1700049426046, + "lastModificationDate": 1701101671212, "contentHash": "04063eb25d5f988bc0b2f3a60fb763b7", "sourceName": "script/base/deploy-v1_1.s.sol", "solcConfig": { @@ -5202,7 +5202,7 @@ } }, "script/base-goerli/deploy-kyc-upgrade.s.sol": { - "lastModificationDate": 1701091363688, + "lastModificationDate": 1701679348295, "contentHash": "559c6c819096ca166379a327a22cec6b", "sourceName": "script/base-goerli/deploy-kyc-upgrade.s.sol", "solcConfig": { @@ -5319,7 +5319,7 @@ } }, "script/base-goerli/deploy-platform.s.sol": { - "lastModificationDate": 1700049426046, + "lastModificationDate": 1701101671211, "contentHash": "cbacf930a7cb4bf9d8fb6c6666a246aa", "sourceName": "script/base-goerli/deploy-platform.s.sol", "solcConfig": { @@ -5636,7 +5636,7 @@ } }, "script/base-goerli/fireblocks/create-publisher.s.sol": { - "lastModificationDate": 1700731306948, + "lastModificationDate": 1701679348296, "contentHash": "e2267180499cb7133e1684156d386c07", "sourceName": "script/base-goerli/fireblocks/create-publisher.s.sol", "solcConfig": { @@ -5821,7 +5821,7 @@ } }, "script/base-goerli/fireblocks/deploy-platform.s.sol": { - "lastModificationDate": 1700731306949, + "lastModificationDate": 1701679348296, "contentHash": "b70d8c3e4c0e87035617d16c5b7ac0f5", "sourceName": "script/base-goerli/fireblocks/deploy-platform.s.sol", "solcConfig": { @@ -6032,7 +6032,7 @@ } }, "script/goerli/fireblocks/create-publisher.s.sol": { - "lastModificationDate": 1700731306950, + "lastModificationDate": 1701679348296, "contentHash": "e2267180499cb7133e1684156d386c07", "sourceName": "script/goerli/fireblocks/create-publisher.s.sol", "solcConfig": { @@ -6217,7 +6217,7 @@ } }, "script/goerli/fireblocks/deploy-platform.s.sol": { - "lastModificationDate": 1700731306950, + "lastModificationDate": 1701679348297, "contentHash": "f4b11546308bcfa921e15dd8e55ca1b8", "sourceName": "script/goerli/fireblocks/deploy-platform.s.sol", "solcConfig": { @@ -7103,8 +7103,8 @@ } }, "src/token/ERC721/ERC721AB.sol": { - "lastModificationDate": 1700731348471, - "contentHash": "6b451e43d2d64f3f3b44305e81c129ce", + "lastModificationDate": 1701683761478, + "contentHash": "12f8b3d2aae54272c38bbb0287d5c26b", "sourceName": "src/token/ERC721/ERC721AB.sol", "solcConfig": { "settings": { @@ -7224,8 +7224,8 @@ } }, "src/token/ERC721/ERC721ABLECoin.sol": { - "lastModificationDate": 1701263652220, - "contentHash": "68dda49cb1dd913513effb14fafbad34", + "lastModificationDate": 1701684802308, + "contentHash": "f8dd91e4bf849bdf67facb04b07bbea6", "sourceName": "src/token/ERC721/ERC721ABLECoin.sol", "solcConfig": { "settings": { @@ -8143,7 +8143,7 @@ } }, "test/factory/AnotherCloneFactory.t.sol": { - "lastModificationDate": 1700049426048, + "lastModificationDate": 1701101671214, "contentHash": "231bdc9a61da91b7c17310ca391a1f50", "sourceName": "test/factory/AnotherCloneFactory.t.sol", "solcConfig": { @@ -8267,7 +8267,7 @@ } }, "test/royalty/ABRoyalty.t.sol": { - "lastModificationDate": 1700732835256, + "lastModificationDate": 1701679348301, "contentHash": "244b285c08d97f5f87b553ebbde6029f", "sourceName": "test/royalty/ABRoyalty.t.sol", "solcConfig": { @@ -8554,7 +8554,7 @@ } }, "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1700732833049, + "lastModificationDate": 1701679348302, "contentHash": "f2d50bad5a51eea627b673c44e38d776", "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", "solcConfig": { @@ -8697,7 +8697,7 @@ } }, "test/token/ERC721/ERC721ABLECoin.t.sol": { - "lastModificationDate": 1701351765495, + "lastModificationDate": 1701683714971, "contentHash": "a1020d6757a8b89327a2b1eda4ed56ac", "sourceName": "test/token/ERC721/ERC721ABLECoin.t.sol", "solcConfig": { @@ -8840,7 +8840,7 @@ } }, "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1700732833038, + "lastModificationDate": 1701679348302, "contentHash": "62a5f9653b561bb7ff332b990c95143d", "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", "solcConfig": { diff --git a/src/token/ERC721/ERC721AB.sol b/src/token/ERC721/ERC721AB.sol index 0ae0927..e69205f 100644 --- a/src/token/ERC721/ERC721AB.sol +++ b/src/token/ERC721/ERC721AB.sol @@ -238,7 +238,7 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { * @param _token token contract address to be withdrawn * @param _amount amount to be withdrawn */ - function withdrawERC20(address _token, uint256 _amount) external onlyOwner { + function withdrawERC20(address _token, uint256 _amount) external virtual onlyOwner { // Transfer amount of underlying token to the caller IERC20(_token).transfer(msg.sender, _amount); } diff --git a/src/token/ERC721/ERC721ABLECoin.sol b/src/token/ERC721/ERC721ABLECoin.sol index a58b050..aa731b4 100644 --- a/src/token/ERC721/ERC721ABLECoin.sol +++ b/src/token/ERC721/ERC721ABLECoin.sol @@ -243,6 +243,46 @@ contract ERC721ABLECoin is ERC721AB { maxSupply = _maxSupply; } + /** + * @notice + * Withdraw the mint proceeds (ERC20) from this contract to the caller + * Only the contract owner can perform this operation + * + */ + function withdrawERC20ToRightholder() external onlyOwner { + (address abTreasury, uint256 fee) = abDataRegistry.getPayoutDetails(publisher, dropId); + + if (abTreasury == address(0)) revert ABErrors.INVALID_PARAMETER(); + + uint256 balance = mintCurrency.balanceOf(address(this)); + uint256 amountToRH = balance * fee / 10_000; + uint256 amountToTreasury = balance - amountToRH; + + if (amountToTreasury > 0) { + bool success = mintCurrency.transfer(abTreasury, amountToTreasury); + if (!success) revert ABErrors.TRANSFER_FAILED(); + } + + if (amountToRH > 0) { + bool success = mintCurrency.transfer(publisher, amountToRH); + if (!success) revert ABErrors.TRANSFER_FAILED(); + } + } + + /** + * @notice + * Withdraw ERC20 tokens from this contract to the caller + * Only the contract owner can perform this operation + * + * @param _token token contract address to be withdrawn + * @param _amount amount to be withdrawn + */ + function withdrawERC20(address _token, uint256 _amount) external virtual override onlyOwner { + if (_token == address(mintCurrency)) revert ABErrors.INVALID_PARAMETER(); + // Transfer amount of underlying token to the caller + IERC20(_token).transfer(msg.sender, _amount); + } + /** * @notice * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid From e4623fc20b8b0746744511d30adb251711d663c9 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Mon, 4 Dec 2023 13:35:11 +0100 Subject: [PATCH 42/74] rename function --- forge-cache/solidity-files-cache.json | 8 ++++---- src/token/ERC721/ERC721ABLECoin.sol | 10 +++++----- test/token/ERC721/ERC721ABLECoin.t.sol | 25 ++++++++++++------------- 3 files changed, 21 insertions(+), 22 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 2850e61..e31429a 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -7224,8 +7224,8 @@ } }, "src/token/ERC721/ERC721ABLECoin.sol": { - "lastModificationDate": 1701684802308, - "contentHash": "f8dd91e4bf849bdf67facb04b07bbea6", + "lastModificationDate": 1701693150865, + "contentHash": "5d743c18e36e3005bdaf63c940518c55", "sourceName": "src/token/ERC721/ERC721ABLECoin.sol", "solcConfig": { "settings": { @@ -8697,8 +8697,8 @@ } }, "test/token/ERC721/ERC721ABLECoin.t.sol": { - "lastModificationDate": 1701683714971, - "contentHash": "a1020d6757a8b89327a2b1eda4ed56ac", + "lastModificationDate": 1701693188351, + "contentHash": "5096108516b4faa73cf1429b124c3a1e", "sourceName": "test/token/ERC721/ERC721ABLECoin.t.sol", "solcConfig": { "settings": { diff --git a/src/token/ERC721/ERC721ABLECoin.sol b/src/token/ERC721/ERC721ABLECoin.sol index aa731b4..dab0846 100644 --- a/src/token/ERC721/ERC721ABLECoin.sol +++ b/src/token/ERC721/ERC721ABLECoin.sol @@ -151,14 +151,14 @@ contract ERC721ABLECoin is ERC721AB { * @param _signature signature to verify allowlist status * @param _kycSignature signature to verify user's KYC status */ - function mintCoin( + function mintWithERC20( address _to, uint256 _phaseId, uint256 _quantity, bytes calldata _signature, bytes calldata _kycSignature ) external { - _mintCoin(_to, _phaseId, _quantity, _signature, _kycSignature); + _mintWithERC20(_to, _phaseId, _quantity, _signature, _kycSignature); } /** @@ -171,7 +171,7 @@ contract ERC721ABLECoin is ERC721AB { * @param _signature signature to verify allowlist status * @param _kycSignature signature to verify user's KYC status */ - function mintCoinWithPermit( + function mintWithERC20Permit( address _to, uint256 _phaseId, uint256 _quantity, @@ -185,7 +185,7 @@ contract ERC721ABLECoin is ERC721AB { IERC20Permit(address(mintCurrency)).permit( msg.sender, address(this), priceCurrency * _quantity, deadline, v, r, s ); - _mintCoin(_to, _phaseId, _quantity, _signature, _kycSignature); + _mintWithERC20(_to, _phaseId, _quantity, _signature, _kycSignature); } // ____ __ ___ __ _ @@ -293,7 +293,7 @@ contract ERC721ABLECoin is ERC721AB { * @param _signature signature to verify allowlist status * @param _kycSignature signature to verify user's KYC status */ - function _mintCoin( + function _mintWithERC20( address _to, uint256 _phaseId, uint256 _quantity, diff --git a/test/token/ERC721/ERC721ABLECoin.t.sol b/test/token/ERC721/ERC721ABLECoin.t.sol index 52a7bd9..9593f39 100644 --- a/test/token/ERC721/ERC721ABLECoin.t.sol +++ b/test/token/ERC721/ERC721ABLECoin.t.sol @@ -2,7 +2,6 @@ pragma solidity ^0.8.18; import "forge-std/Test.sol"; -import "forge-std/StdUtils.sol"; import {ERC721ABLECoin} from "src/token/ERC721/ERC721ABLECoin.sol"; import {ERC1155AB} from "src/token/ERC1155/ERC1155AB.sol"; @@ -605,7 +604,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { // Impersonate `alice` vm.startPrank(alice); mockUSDC.approve(address(nft), PRICE_CURRENCY); - nft.mintCoin(alice, PHASE_ID_0, 1, signature, kycSignature); + nft.mintWithERC20(alice, PHASE_ID_0, 1, signature, kycSignature); vm.stopPrank(); assertEq(nft.balanceOf(alice), 1); @@ -642,7 +641,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { vm.startPrank(alice); mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); - nft.mintCoin(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); @@ -651,7 +650,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { vm.startPrank(bob); mockUSDC.approve(address(nft), PRICE_CURRENCY); vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - nft.mintCoin(bob, PHASE_ID_0, 1, signature, kycSignature); + nft.mintWithERC20(bob, PHASE_ID_0, 1, signature, kycSignature); vm.stopPrank(); } @@ -686,7 +685,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { vm.startPrank(alice); mockUSDC.approve(address(nft), PRICE_CURRENCY * aliceMintQty); - nft.mintCoin(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + nft.mintWithERC20(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); vm.stopPrank(); uint256 bobMintQty = 2; @@ -696,7 +695,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { vm.startPrank(bob); mockUSDC.approve(address(nft), PRICE_CURRENCY * bobMintQty); vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - nft.mintCoin(bob, PHASE_ID_0, bobMintQty, signature, kycSignature); + nft.mintWithERC20(bob, PHASE_ID_0, bobMintQty, signature, kycSignature); vm.stopPrank(); } @@ -722,7 +721,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { vm.startPrank(alice); mockUSDC.approve(address(nft), PRICE_CURRENCY * aliceMintQty); vm.expectRevert(); - nft.mintCoin(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + nft.mintWithERC20(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); vm.stopPrank(); } @@ -806,7 +805,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); vm.expectRevert(ABErrors.MAX_MINT_PER_ADDRESS.selector); - nft.mintCoin(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); } @@ -846,7 +845,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); - nft.mintCoin(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); } @@ -886,7 +885,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); - nft.mintCoin(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); vm.stopPrank(); } @@ -922,7 +921,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { uint256 mintQty = 4; mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); - nft.mintCoin(alice, PHASE_ID_0, mintQty, "", kycSignature); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, "", kycSignature); assertEq(nft.balanceOf(alice), mintQty); @@ -957,7 +956,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { // Impersonate `alice` vm.prank(alice); - nft.mintCoinWithPermit(alice, PHASE_ID_0, 1, 1e18 days, v, r, s, signature, kycSignature); + nft.mintWithERC20Permit(alice, PHASE_ID_0, 1, 1e18 days, v, r, s, signature, kycSignature); assertEq(nft.balanceOf(alice), 1); } @@ -1133,7 +1132,7 @@ contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { address(mockUSDC), URI ); - + abDataRegistry.setDropFee(true, nft.dropId(), 0); vm.prank(publisher); From e5133ab204d8876115db86bed847a6ee6bd51e92 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Mon, 4 Dec 2023 17:17:00 +0100 Subject: [PATCH 43/74] draft refactory ERC721AB (support erc20) --- src/libraries/ABDataTypes.sol | 3 ++- src/token/ERC721/ERC721AB.sol | 46 ++++++++++++++++++++++++++++++++--- 2 files changed, 45 insertions(+), 4 deletions(-) diff --git a/src/libraries/ABDataTypes.sol b/src/libraries/ABDataTypes.sol index 93ebc81..088a335 100644 --- a/src/libraries/ABDataTypes.sol +++ b/src/libraries/ABDataTypes.sol @@ -77,7 +77,8 @@ library ABDataTypes { struct Phase { uint256 phaseStart; uint256 phaseEnd; - uint256 price; + uint256 priceETH; + uint256 priceERC20; uint256 maxMint; bool isPublic; } diff --git a/src/token/ERC721/ERC721AB.sol b/src/token/ERC721/ERC721AB.sol index e69205f..eed2e3a 100644 --- a/src/token/ERC721/ERC721AB.sol +++ b/src/token/ERC721/ERC721AB.sol @@ -72,12 +72,18 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { /// @dev Publisher address address public publisher; + /// @dev ERC20 token address accepted to buy NFT + IERC20 public acceptedCurrency; + /// @dev Drop Identifier uint256 public dropId; /// @dev Percentage ownership of the full master right for one token (to be divided by 1e6) uint256 public sharePerToken; + /// @dev FEE_DENOMINATOR used for fee calculation + uint256 private constant FEE_DENOMINATOR = 10_000; + /// @dev Base Token URI string internal baseTokenURI; @@ -216,7 +222,7 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { if (abTreasury == address(0)) revert ABErrors.INVALID_PARAMETER(); uint256 balance = address(this).balance; - uint256 amountToRH = balance * fee / 10_000; + uint256 amountToRH = balance * fee / FEE_DENOMINATOR; uint256 amountToTreasury = balance - amountToRH; if (amountToTreasury > 0) { @@ -230,6 +236,32 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { } } + /** + * @notice + * Withdraw the mint proceeds (ERC20) from this contract to the caller + * Only the contract owner can perform this operation + * + */ + function withdrawERC20ToRightholder() external onlyOwner { + (address abTreasury, uint256 fee) = abDataRegistry.getPayoutDetails(publisher, dropId); + + if (abTreasury == address(0)) revert ABErrors.INVALID_PARAMETER(); + + uint256 balance = acceptedCurrency.balanceOf(address(this)); + uint256 amountToRH = balance * fee / FEE_DENOMINATOR; + uint256 amountToTreasury = balance - amountToRH; + + if (amountToTreasury > 0) { + bool success = acceptedCurrency.transfer(abTreasury, amountToTreasury); + if (!success) revert ABErrors.TRANSFER_FAILED(); + } + + if (amountToRH > 0) { + bool success = acceptedCurrency.transfer(publisher, amountToRH); + if (!success) revert ABErrors.TRANSFER_FAILED(); + } + } + /** * @notice * Withdraw ERC20 tokens from this contract to the caller @@ -238,7 +270,9 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { * @param _token token contract address to be withdrawn * @param _amount amount to be withdrawn */ - function withdrawERC20(address _token, uint256 _amount) external virtual onlyOwner { + function withdrawERC20(address _token, uint256 _amount) external onlyOwner { + if (_token == address(acceptedCurrency)) revert ABErrors.INVALID_PARAMETER(); + // Transfer amount of underlying token to the caller IERC20(_token).transfer(msg.sender, _amount); } @@ -316,6 +350,7 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { uint256 _mintGenesis, address _genesisRecipient, address _royaltyCurrency, + address _acceptedCurrency, string calldata _baseUri ) internal { // Check that the drop hasn't been already initialized @@ -330,13 +365,18 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { // Register Drop within ABDropRegistry dropId = abDataRegistry.registerDrop(publisher, _royaltyCurrency, 0); + // Set the accepted currency if applicable + if (_acceptedCurrency != address(0)) { + acceptedCurrency = IERC20(_acceptedCurrency); + } + // Set the royalty share sharePerToken = _sharePerToken; // Set base URI baseTokenURI = _baseUri; - // Mint Genesis tokens to `_genesisRecipient` address + // Mint Genesis tokens to `_genesisRecipient` address if applicable if (_mintGenesis > 0) { _mint(_genesisRecipient, _mintGenesis); } From f3f41b9f4fa11cf3c1b64a8323e45243250976f7 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 11:11:52 +0100 Subject: [PATCH 44/74] refactor phases --- src/libraries/ABErrors.sol | 3 +++ src/token/ERC1155/ERC1155AB.sol | 4 ++-- src/token/ERC721/ERC721AB.sol | 1 + src/token/ERC721/ERC721ABOE.sol | 6 ++++-- 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/libraries/ABErrors.sol b/src/libraries/ABErrors.sol index aae73fa..3f864ef 100644 --- a/src/libraries/ABErrors.sol +++ b/src/libraries/ABErrors.sol @@ -77,4 +77,7 @@ library ABErrors { /// @dev Error returned when a non-KYC user attempt an operation that requires KYC error NO_KYC(); + + /// @dev Error returned when attempting to mint using ERC20 while it is not accepted + error MINT_WITH_ERC20_NOT_AVAILABLE(); } diff --git a/src/token/ERC1155/ERC1155AB.sol b/src/token/ERC1155/ERC1155AB.sol index 29a76c9..fb0e757 100644 --- a/src/token/ERC1155/ERC1155AB.sol +++ b/src/token/ERC1155/ERC1155AB.sol @@ -170,7 +170,7 @@ contract ERC1155AB is ERC1155Upgradeable, OwnableUpgradeable { } // Check that user is sending the correct amount of ETH (will revert if user send too much or not enough) - if (msg.value != phase.price * _mintParams.quantity) { + if (msg.value != phase.priceETH * _mintParams.quantity) { revert ABErrors.INCORRECT_ETH_SENT(); } @@ -245,7 +245,7 @@ contract ERC1155AB is ERC1155Upgradeable, OwnableUpgradeable { tokenDetails.mintedSupply += _mintParams[i].quantity; // Increment total cost - totalCost += phase.price * _mintParams[i].quantity; + totalCost += phase.priceETH * _mintParams[i].quantity; // Populate arrays used to mint ERC1155 in batch tokenIds[i] = _mintParams[i].tokenId; diff --git a/src/token/ERC721/ERC721AB.sol b/src/token/ERC721/ERC721AB.sol index eed2e3a..77818d9 100644 --- a/src/token/ERC721/ERC721AB.sol +++ b/src/token/ERC721/ERC721AB.sol @@ -343,6 +343,7 @@ abstract contract ERC721AB is ERC721AUpgradeable, OwnableUpgradeable { * @param _mintGenesis amount of genesis tokens to be minted * @param _genesisRecipient recipient address of genesis tokens * @param _royaltyCurrency royalty currency contract address + * @param _acceptedCurrency accepted currency contract address used to buy tokens * @param _baseUri base URI for this drop */ function _initDrop( diff --git a/src/token/ERC721/ERC721ABOE.sol b/src/token/ERC721/ERC721ABOE.sol index f03a1df..d75cb45 100644 --- a/src/token/ERC721/ERC721ABOE.sol +++ b/src/token/ERC721/ERC721ABOE.sol @@ -99,7 +99,7 @@ contract ERC721ABOE is ERC721AB { } // Check that user is sending the correct amount of ETH (will revert if user send too much or not enough) - if (msg.value != phase.price * _quantity) revert ABErrors.INCORRECT_ETH_SENT(); + if (msg.value != phase.priceETH * _quantity) revert ABErrors.INCORRECT_ETH_SENT(); // Mint `_quantity` amount to `_to` address _mint(_to, _quantity); @@ -121,6 +121,7 @@ contract ERC721ABOE is ERC721AB { * @param _mintGenesis amount of genesis tokens to be minted * @param _genesisRecipient recipient address of genesis tokens * @param _royaltyCurrency royalty currency contract address + * @param _acceptedCurrency accepted currency contract address used to buy tokens * @param _baseUri base URI for this drop */ function initDrop( @@ -128,8 +129,9 @@ contract ERC721ABOE is ERC721AB { uint256 _mintGenesis, address _genesisRecipient, address _royaltyCurrency, + address _acceptedCurrency, string calldata _baseUri ) external virtual onlyOwner { - _initDrop(_sharePerToken, _mintGenesis, _genesisRecipient, _royaltyCurrency, _baseUri); + _initDrop(_sharePerToken, _mintGenesis, _genesisRecipient, _royaltyCurrency, _acceptedCurrency, _baseUri); } } From 1a4c747f75ce95e4bc240b9692ff5852174248a9 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 11:19:56 +0100 Subject: [PATCH 45/74] added mintWithERC20 / mintWithERC20Permit --- src/token/ERC721/ERC721ABLE.sol | 136 +++++++++++++++++++++++++++++++- 1 file changed, 133 insertions(+), 3 deletions(-) diff --git a/src/token/ERC721/ERC721ABLE.sol b/src/token/ERC721/ERC721ABLE.sol index 875efeb..5906da4 100644 --- a/src/token/ERC721/ERC721ABLE.sol +++ b/src/token/ERC721/ERC721ABLE.sol @@ -35,6 +35,9 @@ // SPDX-License-Identifier: MIT pragma solidity ^0.8.18; +/* Openzeppelin Contract */ +import {IERC20Permit} from "@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol"; + /* anotherblock Contract */ import {ERC721AB} from "src/token/ERC721/ERC721AB.sol"; @@ -74,7 +77,7 @@ contract ERC721ABLE is ERC721AB { * @param _signature signature to verify allowlist status * @param _kycSignature signature to verify user's KYC status */ - function mint( + function mintWithETH( address _to, uint256 _phaseId, uint256 _quantity, @@ -107,7 +110,132 @@ contract ERC721ABLE is ERC721AB { if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); // Check that user is sending the correct amount of ETH (will revert if user send too much or not enough) - if (msg.value != phase.price * _quantity) revert ABErrors.INCORRECT_ETH_SENT(); + if (msg.value != phase.priceETH * _quantity) revert ABErrors.INCORRECT_ETH_SENT(); + + // Set quantity minted for `_to` during the current phase + mintedPerPhase[_to][_phaseId] += _quantity; + + // Mint `_quantity` amount to `_to` address + _mint(_to, _quantity); + } + + /** + * @notice + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid + * + * @param _to token recipient address (must be whitelisted) + * @param _phaseId current minting phase (must be started) + * @param _quantity quantity of tokens requested (must be less than max mint per phase) + * @param _signature signature to verify allowlist status + * @param _kycSignature signature to verify user's KYC status + */ + function mintWithERC20( + address _to, + uint256 _phaseId, + uint256 _quantity, + bytes calldata _signature, + bytes calldata _kycSignature + ) external { + // Perform before mint checks (KYC verification) + _beforeMint(_to, _kycSignature); + + // Check that the contract accepts ERC20 payment + if (address(acceptedCurrency) == address(0)) revert ABErrors.MINT_WITH_ERC20_NOT_AVAILABLE(); + + // Check that the requested minting phase has started + if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); + + // Get requested phase details + ABDataTypes.Phase memory phase = phases[_phaseId]; + + // Check that there are enough tokens available for sale + if (_totalMinted() + _quantity > maxSupply) { + revert ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE(); + } + + // Check if the current phase is private + if (!phase.isPublic) { + // Check that the user is included in the allowlist + if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { + revert ABErrors.NOT_ELIGIBLE(); + } + } + + // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase + if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); + + if (!acceptedCurrency.transferFrom(msg.sender, address(this), phase.priceERC20 * _quantity)) { + revert ABErrors.INCORRECT_ETH_SENT(); + } + + // Set quantity minted for `_to` during the current phase + mintedPerPhase[_to][_phaseId] += _quantity; + + // Mint `_quantity` amount to `_to` address + _mint(_to, _quantity); + } + + /** + * @notice + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid + * + * @param _to token recipient address (must be whitelisted) + * @param _phaseId current minting phase (must be started) + * @param _quantity quantity of tokens requested (must be less than max mint per phase) + * @param _signature signature to verify allowlist status + * @param _deadline timestamp at which the permit signature expires + * @param _sigV V component of the permit signature + * @param _sigR R component of the permit signature + * @param _sigS S component of the permit signature + * @param _kycSignature signature to verify user's KYC status + */ + function mintWithERC20Permit( + address _to, + uint256 _phaseId, + uint256 _quantity, + uint256 _deadline, + uint8 _sigV, + bytes32 _sigR, + bytes32 _sigS, + bytes calldata _signature, + bytes calldata _kycSignature + ) external { + // Perform before mint checks (KYC verification) + _beforeMint(_to, _kycSignature); + + // Check that the contract accepts ERC20 payment + if (address(acceptedCurrency) == address(0)) revert ABErrors.MINT_WITH_ERC20_NOT_AVAILABLE(); + + // Check that there are enough tokens available for sale + if (_totalMinted() + _quantity > maxSupply) { + revert ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE(); + } + + // Check that the requested minting phase has started + if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); + + // Get requested phase details + ABDataTypes.Phase memory phase = phases[_phaseId]; + + // Approve token spending using user's signature + IERC20Permit(address(acceptedCurrency)).permit( + msg.sender, address(this), phase.priceERC20 * _quantity, _deadline, _sigV, _sigR, _sigS + ); + + // Check if the current phase is private + if (!phase.isPublic) { + // Check that the user is included in the allowlist + if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { + revert ABErrors.NOT_ELIGIBLE(); + } + } + + // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase + if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); + + if (!acceptedCurrency.transferFrom(msg.sender, address(this), phase.priceERC20 * _quantity)) { + revert ABErrors.INCORRECT_ETH_SENT(); + } // Set quantity minted for `_to` during the current phase mintedPerPhase[_to][_phaseId] += _quantity; @@ -133,6 +261,7 @@ contract ERC721ABLE is ERC721AB { * @param _mintGenesis amount of genesis tokens to be minted * @param _genesisRecipient recipient address of genesis tokens * @param _royaltyCurrency royalty currency contract address + * @param _acceptedCurrency accepted currency contract address used to buy tokens * @param _baseUri base URI for this drop */ function initDrop( @@ -141,13 +270,14 @@ contract ERC721ABLE is ERC721AB { uint256 _mintGenesis, address _genesisRecipient, address _royaltyCurrency, + address _acceptedCurrency, string calldata _baseUri ) external onlyOwner { // Set supply cap maxSupply = _maxSupply; if (_mintGenesis > _maxSupply) revert ABErrors.INVALID_PARAMETER(); - _initDrop(_sharePerToken, _mintGenesis, _genesisRecipient, _royaltyCurrency, _baseUri); + _initDrop(_sharePerToken, _mintGenesis, _genesisRecipient, _royaltyCurrency, _acceptedCurrency, _baseUri); } /** From 670a49ab17d61b9811d817f1d4c73369bb437d28 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 11:22:32 +0100 Subject: [PATCH 46/74] fix test cases and test data --- test/_testdata/ERC1155AB.td.sol | 9 +- test/_testdata/ERC721ABLE.td.sol | 10 +- test/_testdata/ERC721ABOE.td.sol | 10 +- test/token/ERC1155/ERC1155AB.t.sol | 122 ++++++++------ test/token/ERC721/ERC721ABLE.t.sol | 262 +++++++++++++++++------------ test/token/ERC721/ERC721ABOE.t.sol | 218 ++++++++++++++---------- 6 files changed, 377 insertions(+), 254 deletions(-) diff --git a/test/_testdata/ERC1155AB.td.sol b/test/_testdata/ERC1155AB.td.sol index b3056eb..eecf875 100644 --- a/test/_testdata/ERC1155AB.td.sol +++ b/test/_testdata/ERC1155AB.td.sol @@ -44,17 +44,20 @@ contract ERC1155ABTestData { bool public constant PUBLIC_PHASE = true; bool public constant PRIVATE_PHASE = false; - uint256 public constant P0_PRICE = 0.1 ether; + uint256 public constant P0_PRICE_ETH = 0.1 ether; + uint256 public constant P0_PRICE_ERC20 = 100e18; uint256 public constant P0_START = 1680000000; uint256 public constant P0_END = 1680000100; uint256 public constant P0_MAX_MINT = 3; - uint256 public constant P1_PRICE = 0.125 ether; + uint256 public constant P1_PRICE_ETH = 0.125 ether; + uint256 public constant P1_PRICE_ERC20 = 125e18; uint256 public constant P1_START = 1680100001; uint256 public constant P1_END = 1680100100; uint256 public constant P1_MAX_MINT = 3; - uint256 public constant P2_PRICE = 0.15 ether; + uint256 public constant P2_PRICE_ETH = 0.15 ether; + uint256 public constant P2_PRICE_ERC20 = 150e18; uint256 public constant P2_START = 1680200001; uint256 public constant P2_END = 1680200100; uint256 public constant P2_MAX_MINT = 3; diff --git a/test/_testdata/ERC721ABLE.td.sol b/test/_testdata/ERC721ABLE.td.sol index 6e7e7f9..0b2f4b7 100644 --- a/test/_testdata/ERC721ABLE.td.sol +++ b/test/_testdata/ERC721ABLE.td.sol @@ -16,7 +16,6 @@ contract ERC721ABTestData { string public constant MOCK_TOKEN_SYMBOL = "MOCK"; uint256 public constant PUBLISHER_FEE = 9_000; uint256 public constant DROP_SPECIFIC_FEE = 5_000; - uint256 public constant PRICE = 0.1 ether; uint256 public constant SUPPLY = 5; uint256 public constant SHARE_PER_TOKEN = 90_000; uint256 public constant MINT_GENESIS = 1; @@ -34,17 +33,20 @@ contract ERC721ABTestData { uint256 public constant PHASE_ID_1 = 1; uint256 public constant PHASE_ID_2 = 2; - uint256 public constant P0_PRICE = 0.1 ether; + uint256 public constant P0_PRICE_ETH = 0.1 ether; + uint256 public constant P0_PRICE_ERC20 = 100e18; uint256 public constant P0_START = 1680000000; uint256 public constant P0_END = 1680000100; uint256 public constant P0_MAX_MINT = 3; - uint256 public constant P1_PRICE = 0.125 ether; + uint256 public constant P1_PRICE_ETH = 0.125 ether; + uint256 public constant P1_PRICE_ERC20 = 125e18; uint256 public constant P1_START = 1680100001; uint256 public constant P1_END = 1680100100; uint256 public constant P1_MAX_MINT = 3; - uint256 public constant P2_PRICE = 0.15 ether; + uint256 public constant P2_PRICE_ETH = 0.15 ether; + uint256 public constant P2_PRICE_ERC20 = 150e18; uint256 public constant P2_START = 1680200001; uint256 public constant P2_END = 1680200100; uint256 public constant P2_MAX_MINT = 3; diff --git a/test/_testdata/ERC721ABOE.td.sol b/test/_testdata/ERC721ABOE.td.sol index a5951d2..70fa833 100644 --- a/test/_testdata/ERC721ABOE.td.sol +++ b/test/_testdata/ERC721ABOE.td.sol @@ -15,7 +15,6 @@ contract ERC721ABOETestData { string public constant MOCK_TOKEN_NAME = "Mock Token"; string public constant MOCK_TOKEN_SYMBOL = "MOCK"; uint256 public constant PUBLISHER_FEE = 9_000; - uint256 public constant PRICE = 0.1 ether; uint256 public constant SHARE_PER_TOKEN = 90_000; uint256 public constant MINT_GENESIS = 1; uint256 public constant UNITS_PRECISION = 1_000; @@ -32,17 +31,20 @@ contract ERC721ABOETestData { uint256 public constant PHASE_ID_1 = 1; uint256 public constant PHASE_ID_2 = 2; - uint256 public constant P0_PRICE = 0.1 ether; + uint256 public constant P0_PRICE_ETH = 0.1 ether; + uint256 public constant P0_PRICE_ERC20 = 100e18; uint256 public constant P0_START = 1680000000; uint256 public constant P0_END = 1680000100; uint256 public constant P0_MAX_MINT = 3; - uint256 public constant P1_PRICE = 0.125 ether; + uint256 public constant P1_PRICE_ETH = 0.125 ether; + uint256 public constant P1_PRICE_ERC20 = 125e18; uint256 public constant P1_START = 1680100001; uint256 public constant P1_END = 1680100100; uint256 public constant P1_MAX_MINT = 3; - uint256 public constant P2_PRICE = 0.15 ether; + uint256 public constant P2_PRICE_ETH = 0.15 ether; + uint256 public constant P2_PRICE_ERC20 = 150e18; uint256 public constant P2_START = 1680200001; uint256 public constant P2_END = 1680200100; uint256 public constant P2_MAX_MINT = 3; diff --git a/test/token/ERC1155/ERC1155AB.t.sol b/test/token/ERC1155/ERC1155AB.t.sol index 2251110..38c94e1 100644 --- a/test/token/ERC1155/ERC1155AB.t.sol +++ b/test/token/ERC1155/ERC1155AB.t.sol @@ -464,9 +464,12 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { ) ); - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = + ABDataTypes.Phase(P1_START, P1_END, P1_PRICE_ETH, P1_PRICE_ERC20, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase2 = + ABDataTypes.Phase(P2_START, P2_END, P2_PRICE_ETH, P2_PRICE_ERC20, P2_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](3); phases[0] = phase0; @@ -481,19 +484,22 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { assertEq(p0.phaseStart, P0_START); assertEq(p0.phaseEnd, P0_END); - assertEq(p0.price, P0_PRICE); + assertEq(p0.priceETH, P0_PRICE_ETH); + assertEq(p0.priceERC20, P0_PRICE_ERC20); assertEq(p0.maxMint, P0_MAX_MINT); assertEq(p0.isPublic, PRIVATE_PHASE); assertEq(p1.phaseStart, P1_START); assertEq(p1.phaseEnd, P1_END); - assertEq(p1.price, P1_PRICE); + assertEq(p1.priceETH, P1_PRICE_ETH); + assertEq(p1.priceERC20, P1_PRICE_ERC20); assertEq(p1.maxMint, P1_MAX_MINT); assertEq(p1.isPublic, PRIVATE_PHASE); assertEq(p2.phaseStart, P2_START); assertEq(p2.phaseEnd, P2_END); - assertEq(p2.price, P2_PRICE); + assertEq(p2.priceETH, P2_PRICE_ETH); + assertEq(p2.priceERC20, P2_PRICE_ERC20); assertEq(p2.maxMint, P2_MAX_MINT); assertEq(p2.isPublic, PRIVATE_PHASE); @@ -513,7 +519,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { ) ); - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; @@ -523,7 +530,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { assertEq(p0.phaseStart, P0_START); assertEq(p0.phaseEnd, P0_END); - assertEq(p0.price, P0_PRICE); + assertEq(p0.priceETH, P0_PRICE_ETH); + assertEq(p0.priceERC20, P0_PRICE_ERC20); assertEq(p0.maxMint, P0_MAX_MINT); assertEq(p0.isPublic, PRIVATE_PHASE); @@ -543,8 +551,10 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { ) ); - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = + ABDataTypes.Phase(P1_START, P1_END, P1_PRICE_ETH, P1_PRICE_ERC20, P1_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](2); phases[0] = phase1; @@ -569,7 +579,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { ) ); - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; @@ -595,7 +606,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(TOKEN_ID_1, phases); @@ -609,7 +621,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { // Impersonate `alice` vm.prank(alice); - nft.mint{value: P0_PRICE * qty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, qty, signature)); + nft.mint{value: P0_PRICE_ETH * qty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, qty, signature)); assertEq(nft.balanceOf(alice, TOKEN_ID_1), qty); } @@ -630,7 +642,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START - 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(TOKEN_ID_1, phases); @@ -645,7 +658,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.prank(alice); vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); - nft.mint{value: P0_PRICE * qty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, qty, signature)); + nft.mint{value: P0_PRICE_ETH * qty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, qty, signature)); } function test_mint_phaseNotSetProperly() public { @@ -664,7 +677,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START - 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(0, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(0, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(TOKEN_ID_1, phases); @@ -679,7 +693,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.prank(alice); vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); - nft.mint{value: P0_PRICE * qty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, qty, signature)); + nft.mint{value: P0_PRICE_ETH * qty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, qty, signature)); } function test_mint_maxMintPerAddress() public { @@ -698,7 +712,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(TOKEN_ID_1, phases); @@ -712,7 +727,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { // Impersonate `alice` vm.prank(alice); vm.expectRevert(ABErrors.MAX_MINT_PER_ADDRESS.selector); - nft.mint{value: P0_PRICE * qty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, qty, signature)); + nft.mint{value: P0_PRICE_ETH * qty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, qty, signature)); } function test_mint_phaseNotSet() public { @@ -739,7 +754,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.prank(alice); vm.expectRevert(ABErrors.PHASES_NOT_SET.selector); - nft.mint{value: P0_PRICE * qty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, qty, signature)); + nft.mint{value: P0_PRICE_ETH * qty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, qty, signature)); } function test_mint_dropSoldOut() public { @@ -759,7 +774,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, 4, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 4, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(TOKEN_ID_1, phases); @@ -771,13 +787,15 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { bytes memory signature = _generateBackendSignature(alice, address(nft), TOKEN_ID_1, PHASE_ID_0); vm.prank(alice); - nft.mint{value: P0_PRICE * mintQty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, mintQty, signature)); + nft.mint{value: P0_PRICE_ETH * mintQty}( + alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, mintQty, signature) + ); signature = _generateBackendSignature(bob, address(nft), TOKEN_ID_1, PHASE_ID_0); vm.prank(bob); vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - nft.mint{value: P0_PRICE}(bob, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, 1, signature)); + nft.mint{value: P0_PRICE_ETH}(bob, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, 1, signature)); } function test_mint_notEnoughTokenAvailable() public { @@ -796,7 +814,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(TOKEN_ID_1, phases); @@ -808,7 +827,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { bytes memory signature = _generateBackendSignature(alice, address(nft), TOKEN_ID_1, PHASE_ID_0); vm.prank(alice); - nft.mint{value: P0_PRICE * aliceMintQty}( + nft.mint{value: P0_PRICE_ETH * aliceMintQty}( alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, aliceMintQty, signature) ); @@ -817,7 +836,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.prank(bob); vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - nft.mint{value: P0_PRICE * bobMintQty}( + nft.mint{value: P0_PRICE_ETH * bobMintQty}( bob, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, bobMintQty, signature) ); } @@ -839,7 +858,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, 10, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(TOKEN_ID_1, phases); @@ -853,8 +873,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { uint256 mintQty = 4; - uint256 tooHighPrice = P0_PRICE * (mintQty + 1); - uint256 tooLowPrice = P0_PRICE * (mintQty - 1); + uint256 tooHighPrice = P0_PRICE_ETH * (mintQty + 1); + uint256 tooLowPrice = P0_PRICE_ETH * (mintQty - 1); vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); nft.mint{value: tooHighPrice}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, mintQty, signature)); @@ -882,7 +902,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, 10, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(TOKEN_ID_1, phases); @@ -897,7 +918,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { uint256 mintQty = 4; vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); - nft.mint{value: P0_PRICE * mintQty}( + nft.mint{value: P0_PRICE_ETH * mintQty}( alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, mintQty, invalidSignature) ); @@ -921,7 +942,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, 10, PUBLIC_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PUBLIC_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(TOKEN_ID_1, phases); @@ -932,7 +954,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { uint256 mintQty = 4; - nft.mint{value: P0_PRICE * mintQty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, mintQty, "")); + nft.mint{value: P0_PRICE_ETH * mintQty}(alice, ABDataTypes.MintParams(TOKEN_ID_1, PHASE_ID_0, mintQty, "")); assertEq(nft.balanceOf(alice, TOKEN_ID_1), mintQty); vm.stopPrank(); @@ -945,7 +967,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the same phase for Token ID 1, Token ID 2, Token ID 3 - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; @@ -971,7 +994,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.prank(alice); - nft.mintBatch{value: P0_PRICE * 3}(alice, mintParams); + nft.mintBatch{value: P0_PRICE_ETH * 3}(alice, mintParams); assertEq(nft.balanceOf(alice, TOKEN_ID_1), qty); assertEq(nft.balanceOf(alice, TOKEN_ID_2), qty); @@ -985,7 +1008,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the same phase for Token ID 1, Token ID 2, Token ID 3 - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; @@ -1010,7 +1034,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { ); vm.prank(alice); - nft.mintBatch{value: P0_PRICE * qty * 3}(alice, mintParams); + nft.mintBatch{value: P0_PRICE_ETH * qty * 3}(alice, mintParams); assertEq(nft.balanceOf(alice, TOKEN_ID_1), qty); assertEq(nft.balanceOf(alice, TOKEN_ID_2), qty); @@ -1030,7 +1054,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.prank(bob); vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - nft.mintBatch{value: P0_PRICE * qty * 3}(bob, mintParams); + nft.mintBatch{value: P0_PRICE_ETH * qty * 3}(bob, mintParams); } function test_mintBatch_notEligible() public { @@ -1040,7 +1064,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the same phase for Token ID 1, Token ID 2, Token ID 3 - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; @@ -1066,7 +1091,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.prank(alice); vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); - nft.mintBatch{value: P0_PRICE * 3}(alice, mintParams); + nft.mintBatch{value: P0_PRICE_ETH * 3}(alice, mintParams); } function test_mintBatch_maxMintPerAddress() public { @@ -1076,7 +1101,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the same phase for Token ID 1, Token ID 2, Token ID 3 - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; @@ -1103,7 +1129,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.prank(alice); vm.expectRevert(ABErrors.MAX_MINT_PER_ADDRESS.selector); - nft.mintBatch{value: P0_PRICE * qty * 3}(alice, mintParams); + nft.mintBatch{value: P0_PRICE_ETH * qty * 3}(alice, mintParams); } function test_mintBatch_phasesNotSet() public { @@ -1129,7 +1155,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.prank(alice); vm.expectRevert(ABErrors.PHASES_NOT_SET.selector); - nft.mintBatch{value: P0_PRICE * 3}(alice, mintParams); + nft.mintBatch{value: P0_PRICE_ETH * 3}(alice, mintParams); } function test_mintBatch_phaseNotActive() public { @@ -1139,7 +1165,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START - 1); // Set the same phase for Token ID 1, Token ID 2, Token ID 3 - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; @@ -1166,7 +1193,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.prank(alice); vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); - nft.mintBatch{value: P0_PRICE * 3}(alice, mintParams); + nft.mintBatch{value: P0_PRICE_ETH * 3}(alice, mintParams); } function test_mintBatch_incorrectETHSent() public { @@ -1176,7 +1203,8 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.warp(P0_START + 1); // Set the same phase for Token ID 1, Token ID 2, Token ID 3 - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; @@ -1202,7 +1230,7 @@ contract ERC1155ABTest is Test, ERC1155ABTestData, ERC1155Holder { vm.prank(alice); vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); - nft.mintBatch{value: P0_PRICE * 2}(alice, mintParams); + nft.mintBatch{value: P0_PRICE_ETH * 2}(alice, mintParams); } function test_withdrawERC20_admin() public { diff --git a/test/token/ERC721/ERC721ABLE.t.sol b/test/token/ERC721/ERC721ABLE.t.sol index 9019e58..108c470 100644 --- a/test/token/ERC721/ERC721ABLE.t.sol +++ b/test/token/ERC721/ERC721ABLE.t.sol @@ -194,7 +194,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { function test_initDrop_owner() public { vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); uint256 maxSupply = nft.maxSupply(); assertEq(maxSupply, SUPPLY); @@ -211,7 +211,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { function test_initDrop_noRoyaltyNFT() public { vm.prank(publisher); - nft.initDrop(SUPPLY, 0, MINT_GENESIS, genesisRecipient, address(0), URI); + nft.initDrop(SUPPLY, 0, MINT_GENESIS, genesisRecipient, address(0), address(0), URI); uint256 maxSupply = nft.maxSupply(); assertEq(maxSupply, SUPPLY); @@ -230,16 +230,16 @@ contract ERC721ABTest is Test, ERC721ABTestData { function test_initDrop_alreadyInitialized() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); vm.expectRevert(ABErrors.DROP_ALREADY_INITIALIZED.selector); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); vm.stopPrank(); } function test_initDrop_noGenesisMint() public { vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, 0, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, 0, genesisRecipient, address(royaltyToken), address(0), URI); uint256 maxSupply = nft.maxSupply(); @@ -250,33 +250,33 @@ contract ERC721ABTest is Test, ERC721ABTestData { function test_initDrop_nonOwner() public { vm.prank(alice); vm.expectRevert(); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); } function test_initDrop_supplyToGenesisRatio() public { vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, SUPPLY + 1, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, SUPPLY + 1, genesisRecipient, address(royaltyToken), address(0), URI); } function test_initDrop_invalidSharePerToken() public { vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); vm.prank(publisher); - nft.initDrop(SUPPLY, 0, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, 0, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); } function test_initDrop_invalidRoyaltyCurrency() public { vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(0), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(0), address(0), URI); } function test_setBaseURI_owner() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); string memory currentURI = nft.tokenURI(1); assertEq(keccak256(abi.encodePacked(currentURI)), keccak256(abi.encodePacked(URI, "1"))); @@ -292,7 +292,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { function test_setBaseURI_nonOwner() public { vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); string memory newURI = "http://new-uri.ipfs/"; @@ -303,9 +303,12 @@ contract ERC721ABTest is Test, ERC721ABTestData { } function test_setDropPhases_owner_multiplePhases() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = + ABDataTypes.Phase(P1_START, P1_END, P1_PRICE_ETH, P1_PRICE_ERC20, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase2 = + ABDataTypes.Phase(P2_START, P2_END, P2_PRICE_ETH, P2_PRICE_ERC20, P2_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](3); phases[0] = phase0; phases[1] = phase1; @@ -314,54 +317,69 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.prank(publisher); nft.setDropPhases(phases); - (uint256 _P0_START, uint256 _P0_END, uint256 _P0_PRICE, uint256 _P0_MAX_MINT, bool _P0_PHASE_STATUS) = - nft.phases(0); - (uint256 _P1_START, uint256 _P1_END, uint256 _P1_PRICE, uint256 _P1_MAX_MINT, bool _P1_PHASE_STATUS) = - nft.phases(1); - (uint256 _P2_START, uint256 _P2_END, uint256 _P2_PRICE, uint256 _P2_MAX_MINT, bool _P2_PHASE_STATUS) = - nft.phases(2); + (uint256 _START, uint256 _END, uint256 _PRICE_ETH, uint256 _PRICE_ERC20, uint256 _MAX_MINT, bool _PHASE_STATUS) + = nft.phases(0); - assertEq(_P0_START, P0_START); - assertEq(_P0_END, P0_END); - assertEq(_P0_PRICE, P0_PRICE); - assertEq(_P0_MAX_MINT, P0_MAX_MINT); - assertEq(_P0_PHASE_STATUS, PRIVATE_PHASE); + assertEq(_START, P0_START); + assertEq(_END, P0_END); + assertEq(_PRICE_ETH, P0_PRICE_ETH); + assertEq(_PRICE_ERC20, P0_PRICE_ERC20); + assertEq(_MAX_MINT, P0_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); + + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); + + assertEq(_START, P1_START); + assertEq(_END, P1_END); + assertEq(_PRICE_ETH, P1_PRICE_ETH); + assertEq(_PRICE_ERC20, P1_PRICE_ERC20); + assertEq(_MAX_MINT, P1_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); - assertEq(_P1_START, P1_START); - assertEq(_P1_END, P1_END); - assertEq(_P1_PRICE, P1_PRICE); - assertEq(_P1_MAX_MINT, P1_MAX_MINT); - assertEq(_P1_PHASE_STATUS, PRIVATE_PHASE); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); - assertEq(_P2_START, P2_START); - assertEq(_P2_END, P2_END); - assertEq(_P2_PRICE, P2_PRICE); - assertEq(_P2_MAX_MINT, P2_MAX_MINT); - assertEq(_P2_PHASE_STATUS, PRIVATE_PHASE); + assertEq(_START, P2_START); + assertEq(_END, P2_END); + assertEq(_PRICE_ETH, P2_PRICE_ETH); + assertEq(_PRICE_ERC20, P2_PRICE_ERC20); + assertEq(_MAX_MINT, P2_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); } function test_setDropPhases_owner_onePhase() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; vm.prank(publisher); nft.setDropPhases(phases); - (uint256 _P0_START, uint256 _P0_END, uint256 _P0_PRICE, uint256 _P0_MAX_MINT, bool _P0_PHASE_STATUS) = - nft.phases(0); + ( + uint256 _P0_START, + uint256 _P0_END, + uint256 _P0_PRICE_ETH, + uint256 _P0_PRICE_ERC20, + uint256 _P0_MAX_MINT, + bool _P0_PHASE_STATUS + ) = nft.phases(0); assertEq(_P0_START, P0_START); assertEq(_P0_END, P0_END); - assertEq(_P0_PRICE, P0_PRICE); + assertEq(_P0_PRICE_ETH, P0_PRICE_ETH); + assertEq(_P0_PRICE_ERC20, P0_PRICE_ERC20); assertEq(_P0_MAX_MINT, P0_MAX_MINT); assertEq(_P0_PHASE_STATUS, PRIVATE_PHASE); } function test_setDropPhases_owner_rewritePhasesManyToOne() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = + ABDataTypes.Phase(P1_START, P1_END, P1_PRICE_ETH, P1_PRICE_ERC20, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase2 = + ABDataTypes.Phase(P2_START, P2_END, P2_PRICE_ETH, P2_PRICE_ERC20, P2_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](3); phases[0] = phase0; phases[1] = phase1; @@ -370,27 +388,31 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.prank(publisher); nft.setDropPhases(phases); - (uint256 _START, uint256 _END, uint256 _PRICE, uint256 _MAX_MINT, bool _PHASE_STATUS) = nft.phases(0); + (uint256 _START, uint256 _END, uint256 _PRICE_ETH, uint256 _PRICE_ERC20, uint256 _MAX_MINT, bool _PHASE_STATUS) + = nft.phases(0); assertEq(_START, P0_START); assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); + assertEq(_PRICE_ETH, P0_PRICE_ETH); + assertEq(_PRICE_ERC20, P0_PRICE_ERC20); assertEq(_MAX_MINT, P0_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); assertEq(_START, P1_START); assertEq(_END, P1_END); - assertEq(_PRICE, P1_PRICE); + assertEq(_PRICE_ETH, P1_PRICE_ETH); + assertEq(_PRICE_ERC20, P1_PRICE_ERC20); assertEq(_MAX_MINT, P1_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); assertEq(_START, P2_START); assertEq(_END, P2_END); - assertEq(_PRICE, P2_PRICE); + assertEq(_PRICE_ETH, P2_PRICE_ETH); + assertEq(_PRICE_ERC20, P2_PRICE_ERC20); assertEq(_MAX_MINT, P2_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); @@ -400,36 +422,42 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.prank(publisher); nft.setDropPhases(phases); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); assertEq(_START, P0_START); assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); + assertEq(_PRICE_ETH, P0_PRICE_ETH); + assertEq(_PRICE_ERC20, P0_PRICE_ERC20); assertEq(_MAX_MINT, P0_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); vm.expectRevert(); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); } function test_setDropPhases_owner_rewritePhasesOneToMany() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; vm.prank(publisher); nft.setDropPhases(phases); - (uint256 _START, uint256 _END, uint256 _PRICE, uint256 _MAX_MINT, bool _PHASE_STATUS) = nft.phases(0); + (uint256 _START, uint256 _END, uint256 _PRICE_ETH, uint256 _PRICE_ERC20, uint256 _MAX_MINT, bool _PHASE_STATUS) + = nft.phases(0); assertEq(_START, P0_START); assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); + assertEq(_PRICE_ETH, P0_PRICE_ETH); + assertEq(_PRICE_ERC20, P0_PRICE_ERC20); assertEq(_MAX_MINT, P0_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = + ABDataTypes.Phase(P1_START, P1_END, P1_PRICE_ETH, P1_PRICE_ERC20, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase2 = + ABDataTypes.Phase(P2_START, P2_END, P2_PRICE_ETH, P2_PRICE_ERC20, P2_MAX_MINT, PRIVATE_PHASE); phases = new ABDataTypes.Phase[](3); phases[0] = phase0; phases[1] = phase1; @@ -438,34 +466,39 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.prank(publisher); nft.setDropPhases(phases); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); assertEq(_START, P0_START); assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); + assertEq(_PRICE_ETH, P0_PRICE_ETH); + assertEq(_PRICE_ERC20, P0_PRICE_ERC20); assertEq(_MAX_MINT, P0_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); assertEq(_START, P1_START); assertEq(_END, P1_END); - assertEq(_PRICE, P1_PRICE); + assertEq(_PRICE_ETH, P1_PRICE_ETH); + assertEq(_PRICE_ERC20, P1_PRICE_ERC20); assertEq(_MAX_MINT, P1_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); assertEq(_START, P2_START); assertEq(_END, P2_END); - assertEq(_PRICE, P2_PRICE); + assertEq(_PRICE_ETH, P2_PRICE_ETH); + assertEq(_PRICE_ERC20, P2_PRICE_ERC20); assertEq(_MAX_MINT, P2_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); } function test_setDropPhases_incorrectPhaseOrder() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = + ABDataTypes.Phase(P1_START, P1_END, P1_PRICE_ETH, P1_PRICE_ERC20, P1_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](2); phases[0] = phase1; @@ -477,7 +510,8 @@ contract ERC721ABTest is Test, ERC721ABTestData { } function test_setDropPhases_nonOwner() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; @@ -489,13 +523,14 @@ contract ERC721ABTest is Test, ERC721ABTestData { function test_mint() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be after the start of Phase 0 vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -507,19 +542,20 @@ contract ERC721ABTest is Test, ERC721ABTestData { // Impersonate `alice` vm.prank(alice); - nft.mint{value: PRICE}(alice, PHASE_ID_0, 1, signature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH}(alice, PHASE_ID_0, 1, signature, kycSignature); assertEq(nft.balanceOf(alice), 1); } function test_mint_dropSoldOut() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be after the start of Phase 0 vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 4, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 4, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -532,25 +568,26 @@ contract ERC721ABTest is Test, ERC721ABTestData { bytes memory kycSignature = _generateKycSignature(alice, 0); vm.prank(alice); - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); kycSignature = _generateKycSignature(bob, 0); vm.prank(bob); vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - nft.mint{value: PRICE}(bob, PHASE_ID_0, 1, signature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH}(bob, PHASE_ID_0, 1, signature, kycSignature); } function test_mint_notEnoughTokenAvailable() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be after the start of Phase 0 vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -563,7 +600,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { bytes memory kycSignature = _generateKycSignature(alice, 0); vm.prank(alice); - nft.mint{value: PRICE * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); uint256 bobMintQty = 2; signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); @@ -571,12 +608,12 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.prank(bob); vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - nft.mint{value: PRICE * bobMintQty}(bob, PHASE_ID_0, bobMintQty, signature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * bobMintQty}(bob, PHASE_ID_0, bobMintQty, signature, kycSignature); } function test_mint_noPhaseSet() public { vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); uint256 aliceMintQty = 3; @@ -586,18 +623,19 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.prank(alice); vm.expectRevert(); - nft.mint{value: PRICE * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); } function test_mint_incorrectETHSent() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be after the start of Phase 0 vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -613,27 +651,28 @@ contract ERC721ABTest is Test, ERC721ABTestData { uint256 mintQty = 4; - uint256 tooHighPrice = PRICE * (mintQty + 1); - uint256 tooLowPrice = PRICE * (mintQty - 1); + uint256 tooHighPrice = P0_PRICE_ETH * (mintQty + 1); + uint256 tooLowPrice = P0_PRICE_ETH * (mintQty - 1); vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); - nft.mint{value: tooHighPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mintWithETH{value: tooHighPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); - nft.mint{value: tooLowPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mintWithETH{value: tooLowPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); } function test_mint_maxMintPerAddress() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be after the start of Phase 0 vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -650,20 +689,21 @@ contract ERC721ABTest is Test, ERC721ABTestData { uint256 mintQty = P0_MAX_MINT + 1; vm.expectRevert(ABErrors.MAX_MINT_PER_ADDRESS.selector); - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); } function test_mint_phaseNotActive() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be before the start of Phase 0 vm.warp(P0_START - 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -680,20 +720,21 @@ contract ERC721ABTest is Test, ERC721ABTestData { uint256 mintQty = 4; vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); } function test_mint_notEligible() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be after the start of Phase 0 vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -709,20 +750,21 @@ contract ERC721ABTest is Test, ERC721ABTestData { bytes memory kycSignature = _generateKycSignature(alice, 0); vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); vm.stopPrank(); } function test_mint_public() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be after the start of Phase 0 vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PUBLIC_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PUBLIC_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -736,7 +778,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { uint256 mintQty = 4; - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, "", kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, "", kycSignature); assertEq(nft.balanceOf(alice), mintQty); @@ -748,7 +790,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.assume(_newShare < 1_000_000); vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); assertEq(nft.sharePerToken(), SHARE_PER_TOKEN); @@ -765,7 +807,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.assume(_nonAdmin != publisher); vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); assertEq(nft.sharePerToken(), SHARE_PER_TOKEN); @@ -855,7 +897,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.deal(address(nft), _amount); vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); abDataRegistry.setDropFee(true, nft.dropId(), 10_000); @@ -875,7 +917,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.deal(address(nft), _amount); vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); abDataRegistry.setDropFee(true, nft.dropId(), 0); @@ -915,7 +957,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { function test_setMaxSupply() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); assertEq(nft.maxSupply(), SUPPLY); nft.setMaxSupply(SUPPLY + 1); @@ -925,7 +967,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { function test_setMaxSupply_alreadyMinted() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, 2, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, 2, genesisRecipient, address(royaltyToken), address(0), URI); vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); nft.setMaxSupply(1); @@ -935,7 +977,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { function test_symbol_initialized() public { vm.startPrank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, 2, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, 2, genesisRecipient, address(royaltyToken), address(0), URI); string memory symbol = nft.symbol(); @@ -952,7 +994,9 @@ contract ERC721ABTest is Test, ERC721ABTestData { string memory tokenURI = "metadata.io/"; vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), tokenURI); + nft.initDrop( + SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), tokenURI + ); string memory returnedTokenURI = nft.tokenURI(1); assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("metadata.io/1")), true); @@ -962,7 +1006,9 @@ contract ERC721ABTest is Test, ERC721ABTestData { string memory tokenURI = "metadata.io"; vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), tokenURI); + nft.initDrop( + SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), tokenURI + ); string memory returnedTokenURI = nft.tokenURI(1); assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("metadata.io")), true); @@ -972,7 +1018,9 @@ contract ERC721ABTest is Test, ERC721ABTestData { string memory tokenURI = ""; vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), tokenURI); + nft.initDrop( + SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), tokenURI + ); string memory returnedTokenURI = nft.tokenURI(1); assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("")), true); @@ -982,7 +1030,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { string memory tokenURI = "metadata.io/"; vm.prank(publisher); - nft.initDrop(SUPPLY, SHARE_PER_TOKEN, 0, genesisRecipient, address(royaltyToken), tokenURI); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, 0, genesisRecipient, address(royaltyToken), address(0), tokenURI); vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); nft.tokenURI(1); diff --git a/test/token/ERC721/ERC721ABOE.t.sol b/test/token/ERC721/ERC721ABOE.t.sol index dfce7df..927c15f 100644 --- a/test/token/ERC721/ERC721ABOE.t.sol +++ b/test/token/ERC721/ERC721ABOE.t.sol @@ -190,7 +190,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { function test_initDrop_owner() public { vm.prank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); uint256 dropId = nft.dropId(); assertEq(dropId, DROP_ID_OFFSET + 1); @@ -204,7 +204,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { function test_initDrop_noRoyaltyNFT() public { vm.prank(publisher); - nft.initDrop(0, MINT_GENESIS, genesisRecipient, address(0), URI); + nft.initDrop(0, MINT_GENESIS, genesisRecipient, address(0), address(0), URI); uint256 dropId = nft.dropId(); assertEq(dropId, DROP_ID_OFFSET + 1); @@ -220,16 +220,16 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { function test_initDrop_alreadyInitialized() public { vm.startPrank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); vm.expectRevert(ABErrors.DROP_ALREADY_INITIALIZED.selector); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); vm.stopPrank(); } function test_initDrop_noGenesisMint() public { vm.prank(publisher); - nft.initDrop(SHARE_PER_TOKEN, 0, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, 0, genesisRecipient, address(royaltyToken), address(0), URI); assertEq(nft.balanceOf(genesisRecipient), 0); } @@ -237,26 +237,26 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { function test_initDrop_nonOwner() public { vm.prank(alice); vm.expectRevert(); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); } function test_initDrop_invalidSharePerToken() public { vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); vm.prank(publisher); - nft.initDrop(0, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(0, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); } function test_initDrop_invalidRoyaltyCurrency() public { vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); vm.prank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(0), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(0), address(0), URI); } function test_setBaseURI_owner() public { vm.startPrank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); string memory currentURI = nft.tokenURI(1); assertEq(keccak256(abi.encodePacked(currentURI)), keccak256(abi.encodePacked(URI, "1"))); @@ -272,7 +272,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { function test_setBaseURI_nonOwner() public { vm.prank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); string memory newURI = "http://new-uri.ipfs/"; @@ -283,9 +283,12 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { } function test_setDropPhases_owner_multiplePhases() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = + ABDataTypes.Phase(P1_START, P1_END, P1_PRICE_ETH, P1_PRICE_ERC20, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase2 = + ABDataTypes.Phase(P2_START, P2_END, P2_PRICE_ETH, P2_PRICE_ERC20, P2_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](3); phases[0] = phase0; phases[1] = phase1; @@ -294,54 +297,69 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { vm.prank(publisher); nft.setDropPhases(phases); - (uint256 _P0_START, uint256 _P0_END, uint256 _P0_PRICE, uint256 _P0_MAX_MINT, bool _P0_PHASE_STATUS) = - nft.phases(0); - (uint256 _P1_START, uint256 _P1_END, uint256 _P1_PRICE, uint256 _P1_MAX_MINT, bool _P1_PHASE_STATUS) = - nft.phases(1); - (uint256 _P2_START, uint256 _P2_END, uint256 _P2_PRICE, uint256 _P2_MAX_MINT, bool _P2_PHASE_STATUS) = - nft.phases(2); + (uint256 _START, uint256 _END, uint256 _PRICE_ETH, uint256 _PRICE_ERC20, uint256 _MAX_MINT, bool _PHASE_STATUS) + = nft.phases(0); - assertEq(_P0_START, P0_START); - assertEq(_P0_END, P0_END); - assertEq(_P0_PRICE, P0_PRICE); - assertEq(_P0_MAX_MINT, P0_MAX_MINT); - assertEq(_P0_PHASE_STATUS, PRIVATE_PHASE); + assertEq(_START, P0_START); + assertEq(_END, P0_END); + assertEq(_PRICE_ETH, P0_PRICE_ETH); + assertEq(_PRICE_ERC20, P0_PRICE_ERC20); + assertEq(_MAX_MINT, P0_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); + + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); + + assertEq(_START, P1_START); + assertEq(_END, P1_END); + assertEq(_PRICE_ETH, P1_PRICE_ETH); + assertEq(_PRICE_ERC20, P1_PRICE_ERC20); + assertEq(_MAX_MINT, P1_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); - assertEq(_P1_START, P1_START); - assertEq(_P1_END, P1_END); - assertEq(_P1_PRICE, P1_PRICE); - assertEq(_P1_MAX_MINT, P1_MAX_MINT); - assertEq(_P1_PHASE_STATUS, PRIVATE_PHASE); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); - assertEq(_P2_START, P2_START); - assertEq(_P2_END, P2_END); - assertEq(_P2_PRICE, P2_PRICE); - assertEq(_P2_MAX_MINT, P2_MAX_MINT); - assertEq(_P2_PHASE_STATUS, PRIVATE_PHASE); + assertEq(_START, P2_START); + assertEq(_END, P2_END); + assertEq(_PRICE_ETH, P2_PRICE_ETH); + assertEq(_PRICE_ERC20, P2_PRICE_ERC20); + assertEq(_MAX_MINT, P2_MAX_MINT); + assertEq(_PHASE_STATUS, PRIVATE_PHASE); } function test_setDropPhases_owner_onePhase() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; vm.prank(publisher); nft.setDropPhases(phases); - (uint256 _P0_START, uint256 _P0_END, uint256 _P0_PRICE, uint256 _P0_MAX_MINT, bool _P0_PHASE_STATUS) = - nft.phases(0); + ( + uint256 _P0_START, + uint256 _P0_END, + uint256 _P0_PRICE_ETH, + uint256 _P0_PRICE_ERC20, + uint256 _P0_MAX_MINT, + bool _P0_PHASE_STATUS + ) = nft.phases(0); assertEq(_P0_START, P0_START); assertEq(_P0_END, P0_END); - assertEq(_P0_PRICE, P0_PRICE); + assertEq(_P0_PRICE_ETH, P0_PRICE_ETH); + assertEq(_P0_PRICE_ERC20, P0_PRICE_ERC20); assertEq(_P0_MAX_MINT, P0_MAX_MINT); assertEq(_P0_PHASE_STATUS, PRIVATE_PHASE); } function test_setDropPhases_owner_rewritePhasesManyToOne() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = + ABDataTypes.Phase(P1_START, P1_END, P1_PRICE_ETH, P1_PRICE_ERC20, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase2 = + ABDataTypes.Phase(P2_START, P2_END, P2_PRICE_ETH, P2_PRICE_ERC20, P2_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](3); phases[0] = phase0; phases[1] = phase1; @@ -350,27 +368,31 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { vm.prank(publisher); nft.setDropPhases(phases); - (uint256 _START, uint256 _END, uint256 _PRICE, uint256 _MAX_MINT, bool _PHASE_STATUS) = nft.phases(0); + (uint256 _START, uint256 _END, uint256 _PRICE_ETH, uint256 _PRICE_ERC20, uint256 _MAX_MINT, bool _PHASE_STATUS) + = nft.phases(0); assertEq(_START, P0_START); assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); + assertEq(_PRICE_ETH, P0_PRICE_ETH); + assertEq(_PRICE_ERC20, P0_PRICE_ERC20); assertEq(_MAX_MINT, P0_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); assertEq(_START, P1_START); assertEq(_END, P1_END); - assertEq(_PRICE, P1_PRICE); + assertEq(_PRICE_ETH, P1_PRICE_ETH); + assertEq(_PRICE_ERC20, P1_PRICE_ERC20); assertEq(_MAX_MINT, P1_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); assertEq(_START, P2_START); assertEq(_END, P2_END); - assertEq(_PRICE, P2_PRICE); + assertEq(_PRICE_ETH, P2_PRICE_ETH); + assertEq(_PRICE_ERC20, P2_PRICE_ERC20); assertEq(_MAX_MINT, P2_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); @@ -380,36 +402,43 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { vm.prank(publisher); nft.setDropPhases(phases); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); assertEq(_START, P0_START); assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); + assertEq(_PRICE_ETH, P0_PRICE_ETH); + assertEq(_PRICE_ERC20, P0_PRICE_ERC20); assertEq(_MAX_MINT, P0_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); vm.expectRevert(); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); } function test_setDropPhases_owner_rewritePhasesOneToMany() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; vm.prank(publisher); nft.setDropPhases(phases); - (uint256 _START, uint256 _END, uint256 _PRICE, uint256 _MAX_MINT, bool _PHASE_STATUS) = nft.phases(0); + (uint256 _START, uint256 _END, uint256 _PRICE_ETH, uint256 _PRICE_ERC20, uint256 _MAX_MINT, bool _PHASE_STATUS) + = nft.phases(0); assertEq(_START, P0_START); assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); + assertEq(_PRICE_ETH, P0_PRICE_ETH); + assertEq(_PRICE_ERC20, P0_PRICE_ERC20); assertEq(_MAX_MINT, P0_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = + ABDataTypes.Phase(P1_START, P1_END, P1_PRICE_ETH, P1_PRICE_ERC20, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase2 = + ABDataTypes.Phase(P2_START, P2_END, P2_PRICE_ETH, P2_PRICE_ERC20, P2_MAX_MINT, PRIVATE_PHASE); + phases = new ABDataTypes.Phase[](3); phases[0] = phase0; phases[1] = phase1; @@ -418,34 +447,39 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { vm.prank(publisher); nft.setDropPhases(phases); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); assertEq(_START, P0_START); assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); + assertEq(_PRICE_ETH, P0_PRICE_ETH); + assertEq(_PRICE_ERC20, P0_PRICE_ERC20); assertEq(_MAX_MINT, P0_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); assertEq(_START, P1_START); assertEq(_END, P1_END); - assertEq(_PRICE, P1_PRICE); + assertEq(_PRICE_ETH, P1_PRICE_ETH); + assertEq(_PRICE_ERC20, P1_PRICE_ERC20); assertEq(_MAX_MINT, P1_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); + (_START, _END, _PRICE_ETH, _PRICE_ERC20, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); assertEq(_START, P2_START); assertEq(_END, P2_END); - assertEq(_PRICE, P2_PRICE); + assertEq(_PRICE_ETH, P2_PRICE_ETH); + assertEq(_PRICE_ERC20, P2_PRICE_ERC20); assertEq(_MAX_MINT, P2_MAX_MINT); assertEq(_PHASE_STATUS, PRIVATE_PHASE); } function test_setDropPhases_incorrectPhaseOrder() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase1 = + ABDataTypes.Phase(P1_START, P1_END, P1_PRICE_ETH, P1_PRICE_ERC20, P1_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](2); phases[0] = phase1; @@ -457,7 +491,8 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { } function test_setDropPhases_nonOwner() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; @@ -469,13 +504,14 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { function test_mint() public { vm.startPrank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be after the start of Phase 0 vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -487,13 +523,13 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { // Impersonate `alice` vm.prank(alice); - nft.mint{value: PRICE}(alice, PHASE_ID_0, 1, signature, kycSignature); + nft.mint{value: P0_PRICE_ETH}(alice, PHASE_ID_0, 1, signature, kycSignature); assertEq(nft.balanceOf(alice), 1); } function test_mint_noPhaseSet() public { vm.prank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); uint256 aliceMintQty = 3; @@ -503,18 +539,19 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { vm.prank(alice); vm.expectRevert(); - nft.mint{value: PRICE * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + nft.mint{value: P0_PRICE_ETH * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); } function test_mint_incorrectETHSent() public { vm.startPrank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be after the start of Phase 0 vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -530,8 +567,8 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { uint256 mintQty = 4; - uint256 tooHighPrice = PRICE * (mintQty + 1); - uint256 tooLowPrice = PRICE * (mintQty - 1); + uint256 tooHighPrice = P0_PRICE_ETH * (mintQty + 1); + uint256 tooLowPrice = P0_PRICE_ETH * (mintQty - 1); vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); nft.mint{value: tooHighPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); @@ -544,13 +581,14 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { function test_mint_phaseNotActive() public { vm.startPrank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be before the start of Phase 0 vm.warp(P0_START - 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -567,20 +605,21 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { uint256 mintQty = 4; vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mint{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); } function test_mint_notEligible() public { vm.startPrank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be after the start of Phase 0 vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -596,20 +635,21 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { bytes memory kycSignature = _generateKycSignature(alice, 0); vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); + nft.mint{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); vm.stopPrank(); } function test_mint_public() public { vm.startPrank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); // Set block.timestamp to be after the start of Phase 0 vm.warp(P0_START + 1); // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PUBLIC_PHASE); + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PUBLIC_PHASE); ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); phases[0] = phase0; nft.setDropPhases(phases); @@ -623,7 +663,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { uint256 mintQty = 4; - nft.mint{value: PRICE * mintQty}(alice, PHASE_ID_0, mintQty, "", kycSignature); + nft.mint{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, "", kycSignature); assertEq(nft.balanceOf(alice), mintQty); @@ -635,7 +675,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { vm.assume(_newShare < 1_000_000); vm.startPrank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); assertEq(nft.sharePerToken(), SHARE_PER_TOKEN); @@ -652,7 +692,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { vm.assume(_nonAdmin != publisher); vm.prank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); assertEq(nft.sharePerToken(), SHARE_PER_TOKEN); @@ -762,7 +802,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { function test_symbol_initialized() public { vm.startPrank(publisher); - nft.initDrop(SHARE_PER_TOKEN, 2, genesisRecipient, address(royaltyToken), URI); + nft.initDrop(SHARE_PER_TOKEN, 2, genesisRecipient, address(royaltyToken), address(0), URI); string memory symbol = nft.symbol(); @@ -779,7 +819,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { string memory tokenURI = "metadata.io/"; vm.prank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), tokenURI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), tokenURI); string memory returnedTokenURI = nft.tokenURI(1); assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("metadata.io/1")), true); @@ -789,7 +829,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { string memory tokenURI = "metadata.io"; vm.prank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), tokenURI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), tokenURI); string memory returnedTokenURI = nft.tokenURI(1); assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("metadata.io")), true); @@ -799,7 +839,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { string memory tokenURI = ""; vm.prank(publisher); - nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), tokenURI); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), tokenURI); string memory returnedTokenURI = nft.tokenURI(1); assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("")), true); @@ -809,7 +849,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { string memory tokenURI = "metadata.io/"; vm.prank(publisher); - nft.initDrop(SHARE_PER_TOKEN, 0, genesisRecipient, address(royaltyToken), tokenURI); + nft.initDrop(SHARE_PER_TOKEN, 0, genesisRecipient, address(royaltyToken), address(0), tokenURI); vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); nft.tokenURI(1); From 4a46e1a6906a07ce750ea3d1cf05750dfe19f408 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 11:22:37 +0100 Subject: [PATCH 47/74] cache --- forge-cache/solidity-files-cache.json | 273 ++++---------------------- 1 file changed, 40 insertions(+), 233 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index e31429a..4b6c98f 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -4547,6 +4547,7 @@ "lib/forge-std/src/interfaces/IMulticall3.sol", "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", "lib/openzeppelin-contracts/contracts/utils/Strings.sol", "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", @@ -4658,6 +4659,7 @@ "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", "lib/openzeppelin-contracts/contracts/utils/Address.sol", "lib/openzeppelin-contracts/contracts/utils/Context.sol", @@ -4861,6 +4863,7 @@ "lib/forge-std/src/interfaces/IMulticall3.sol", "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", "lib/openzeppelin-contracts/contracts/utils/Strings.sol", "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", @@ -5151,6 +5154,7 @@ "lib/forge-std/src/interfaces/IMulticall3.sol", "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", "lib/openzeppelin-contracts/contracts/utils/Strings.sol", "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", @@ -5262,6 +5266,7 @@ "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", "lib/openzeppelin-contracts/contracts/utils/Address.sol", "lib/openzeppelin-contracts/contracts/utils/Context.sol", @@ -5379,6 +5384,7 @@ "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", "lib/openzeppelin-contracts/contracts/utils/Address.sol", "lib/openzeppelin-contracts/contracts/utils/Context.sol", @@ -5583,6 +5589,7 @@ "lib/forge-std/src/interfaces/IMulticall3.sol", "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", "lib/openzeppelin-contracts/contracts/utils/Strings.sol", "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", @@ -5881,6 +5888,7 @@ "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", "lib/openzeppelin-contracts/contracts/utils/Address.sol", "lib/openzeppelin-contracts/contracts/utils/Context.sol", @@ -5938,7 +5946,7 @@ } }, "script/base-goerli/fireblocks/deploy-royalty.s.sol": { - "lastModificationDate": 1700731306950, + "lastModificationDate": 1701679348296, "contentHash": "8f8077a3a079d877814bee151a073325", "sourceName": "script/base-goerli/fireblocks/deploy-royalty.s.sol", "solcConfig": { @@ -6277,6 +6285,7 @@ "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", "lib/openzeppelin-contracts/contracts/utils/Address.sol", "lib/openzeppelin-contracts/contracts/utils/Context.sol", @@ -6334,7 +6343,7 @@ } }, "script/goerli/fireblocks/deploy-royalty.s.sol": { - "lastModificationDate": 1700731306951, + "lastModificationDate": 1701679348297, "contentHash": "8f8077a3a079d877814bee151a073325", "sourceName": "script/goerli/fireblocks/deploy-royalty.s.sol", "solcConfig": { @@ -6571,6 +6580,7 @@ "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", "lib/openzeppelin-contracts/contracts/utils/Address.sol", "lib/openzeppelin-contracts/contracts/utils/Context.sol", @@ -6811,8 +6821,8 @@ } }, "src/libraries/ABDataTypes.sol": { - "lastModificationDate": 1689949161067, - "contentHash": "1fb8a463a53cb3f46035daf65d058bd8", + "lastModificationDate": 1701705525140, + "contentHash": "cea9e196d6467ea9022b99325ee0179b", "sourceName": "src/libraries/ABDataTypes.sol", "solcConfig": { "settings": { @@ -6852,8 +6862,8 @@ } }, "src/libraries/ABErrors.sol": { - "lastModificationDate": 1699431261099, - "contentHash": "0af5b5dd71207678278412b8cf947d07", + "lastModificationDate": 1701770170362, + "contentHash": "92b577de8fe21ade7000129e7ce11c1a", "sourceName": "src/libraries/ABErrors.sol", "solcConfig": { "settings": { @@ -7045,8 +7055,8 @@ } }, "src/token/ERC1155/ERC1155AB.sol": { - "lastModificationDate": 1699519078081, - "contentHash": "1452971d484276b84b000f29153aaca4", + "lastModificationDate": 1701706334469, + "contentHash": "152b478934293983e8ad5d3c5c70c379", "sourceName": "src/token/ERC1155/ERC1155AB.sol", "solcConfig": { "settings": { @@ -7103,8 +7113,8 @@ } }, "src/token/ERC721/ERC721AB.sol": { - "lastModificationDate": 1701683761478, - "contentHash": "12f8b3d2aae54272c38bbb0287d5c26b", + "lastModificationDate": 1701706719742, + "contentHash": "6175c76c52ffee86d67c510cb40bc9f4", "sourceName": "src/token/ERC721/ERC721AB.sol", "solcConfig": { "settings": { @@ -7163,8 +7173,8 @@ } }, "src/token/ERC721/ERC721ABLE.sol": { - "lastModificationDate": 1700731306954, - "contentHash": "d78a8951ac3a3aec7c3973448ae3830c", + "lastModificationDate": 1701770179525, + "contentHash": "fbb060fbcf554010d316d64a0fa2307c", "sourceName": "src/token/ERC721/ERC721ABLE.sol", "solcConfig": { "settings": { @@ -7202,6 +7212,7 @@ "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/utils/Strings.sol", "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", @@ -7223,71 +7234,9 @@ } } }, - "src/token/ERC721/ERC721ABLECoin.sol": { - "lastModificationDate": 1701693150865, - "contentHash": "5d743c18e36e3005bdaf63c940518c55", - "sourceName": "src/token/ERC721/ERC721ABLECoin.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABLECoin": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLECoin.sol/ERC721ABLECoin.json" - } - } - }, "src/token/ERC721/ERC721ABOE.sol": { - "lastModificationDate": 1700574414122, - "contentHash": "0480f19286620b20db9164bb5dc0f037", + "lastModificationDate": 1701706755817, + "contentHash": "6775685d5c1c3c97dbe6b95ef0b911d3", "sourceName": "src/token/ERC721/ERC721ABOE.sol", "solcConfig": { "settings": { @@ -7979,8 +7928,8 @@ } }, "test/_testdata/ERC1155AB.td.sol": { - "lastModificationDate": 1689774928282, - "contentHash": "23ad035185459b78fc89b380a079b389", + "lastModificationDate": 1701706882355, + "contentHash": "bd04bcac858f83f4de16c65ec439980d", "sourceName": "test/_testdata/ERC1155AB.td.sol", "solcConfig": { "settings": { @@ -8020,8 +7969,8 @@ } }, "test/_testdata/ERC721ABLE.td.sol": { - "lastModificationDate": 1699519078082, - "contentHash": "18e471e2024322ed2364a9b96590a5d4", + "lastModificationDate": 1701765032365, + "contentHash": "f056e73d5d66d48c4aaa34e2dec517a8", "sourceName": "test/_testdata/ERC721ABLE.td.sol", "solcConfig": { "settings": { @@ -8102,8 +8051,8 @@ } }, "test/_testdata/ERC721ABOE.td.sol": { - "lastModificationDate": 1699519078082, - "contentHash": "0788ecee578ed53f129ab21f714a4788", + "lastModificationDate": 1701766193392, + "contentHash": "94fd86404344376e6259814213239c3b", "sourceName": "test/_testdata/ERC721ABOE.td.sol", "solcConfig": { "settings": { @@ -8208,6 +8157,7 @@ "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", "lib/openzeppelin-contracts/contracts/utils/Address.sol", "lib/openzeppelin-contracts/contracts/utils/Context.sol", @@ -8407,8 +8357,8 @@ } }, "test/token/ERC1155/ERC1155AB.t.sol": { - "lastModificationDate": 1700732833055, - "contentHash": "7e601132d94c61b0b8aea76a591768ba", + "lastModificationDate": 1701707153065, + "contentHash": "97729cddbce4e4d3c9214d48f583c306", "sourceName": "test/token/ERC1155/ERC1155AB.t.sol", "solcConfig": { "settings": { @@ -8554,8 +8504,8 @@ } }, "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1701679348302, - "contentHash": "f2d50bad5a51eea627b673c44e38d776", + "lastModificationDate": 1701770206435, + "contentHash": "386431bdeeadb4520430fdd274d9e908", "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", "solcConfig": { "settings": { @@ -8696,152 +8646,9 @@ } } }, - "test/token/ERC721/ERC721ABLECoin.t.sol": { - "lastModificationDate": 1701693188351, - "contentHash": "5096108516b4faa73cf1429b124c3a1e", - "sourceName": "test/token/ERC721/ERC721ABLECoin.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLECoin.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABKYCModule.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol", - "test/_mocks/ABSuperToken.sol", - "test/_mocks/MockToken.sol", - "test/_testdata/ERC721ABLECoin.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABLECoinTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLECoin.t.sol/ERC721ABLECoinTest.json" - } - } - }, "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1701679348302, - "contentHash": "62a5f9653b561bb7ff332b990c95143d", + "lastModificationDate": 1701767627919, + "contentHash": "aa57b0f2f5b3a2da1b19ab9235af1707", "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", "solcConfig": { "settings": { @@ -8983,7 +8790,7 @@ } }, "test/utils/ABDataRegistry.t.sol": { - "lastModificationDate": 1700732833036, + "lastModificationDate": 1701679348303, "contentHash": "c9efb686599e96d0f106725bb622c2b2", "sourceName": "test/utils/ABDataRegistry.t.sol", "solcConfig": { @@ -9105,7 +8912,7 @@ } }, "test/utils/ABVerifier.t.sol": { - "lastModificationDate": 1699519078085, + "lastModificationDate": 1699523979388, "contentHash": "9c9577365435fdbc47bbf215a8914342", "sourceName": "test/utils/ABVerifier.t.sol", "solcConfig": { From 86b98f5aad337161a1d395b7aece8f279d2e2d6b Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 11:29:56 +0100 Subject: [PATCH 48/74] price erc20 decimals update in testdata --- test/_testdata/ERC1155AB.td.sol | 6 +++--- test/_testdata/ERC721ABLE.td.sol | 6 +++--- test/_testdata/ERC721ABOE.td.sol | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/test/_testdata/ERC1155AB.td.sol b/test/_testdata/ERC1155AB.td.sol index eecf875..f706a76 100644 --- a/test/_testdata/ERC1155AB.td.sol +++ b/test/_testdata/ERC1155AB.td.sol @@ -45,19 +45,19 @@ contract ERC1155ABTestData { bool public constant PRIVATE_PHASE = false; uint256 public constant P0_PRICE_ETH = 0.1 ether; - uint256 public constant P0_PRICE_ERC20 = 100e18; + uint256 public constant P0_PRICE_ERC20 = 100e6; uint256 public constant P0_START = 1680000000; uint256 public constant P0_END = 1680000100; uint256 public constant P0_MAX_MINT = 3; uint256 public constant P1_PRICE_ETH = 0.125 ether; - uint256 public constant P1_PRICE_ERC20 = 125e18; + uint256 public constant P1_PRICE_ERC20 = 125e6; uint256 public constant P1_START = 1680100001; uint256 public constant P1_END = 1680100100; uint256 public constant P1_MAX_MINT = 3; uint256 public constant P2_PRICE_ETH = 0.15 ether; - uint256 public constant P2_PRICE_ERC20 = 150e18; + uint256 public constant P2_PRICE_ERC20 = 150e6; uint256 public constant P2_START = 1680200001; uint256 public constant P2_END = 1680200100; uint256 public constant P2_MAX_MINT = 3; diff --git a/test/_testdata/ERC721ABLE.td.sol b/test/_testdata/ERC721ABLE.td.sol index 0b2f4b7..ab8e990 100644 --- a/test/_testdata/ERC721ABLE.td.sol +++ b/test/_testdata/ERC721ABLE.td.sol @@ -34,19 +34,19 @@ contract ERC721ABTestData { uint256 public constant PHASE_ID_2 = 2; uint256 public constant P0_PRICE_ETH = 0.1 ether; - uint256 public constant P0_PRICE_ERC20 = 100e18; + uint256 public constant P0_PRICE_ERC20 = 100e6; uint256 public constant P0_START = 1680000000; uint256 public constant P0_END = 1680000100; uint256 public constant P0_MAX_MINT = 3; uint256 public constant P1_PRICE_ETH = 0.125 ether; - uint256 public constant P1_PRICE_ERC20 = 125e18; + uint256 public constant P1_PRICE_ERC20 = 125e6; uint256 public constant P1_START = 1680100001; uint256 public constant P1_END = 1680100100; uint256 public constant P1_MAX_MINT = 3; uint256 public constant P2_PRICE_ETH = 0.15 ether; - uint256 public constant P2_PRICE_ERC20 = 150e18; + uint256 public constant P2_PRICE_ERC20 = 150e6; uint256 public constant P2_START = 1680200001; uint256 public constant P2_END = 1680200100; uint256 public constant P2_MAX_MINT = 3; diff --git a/test/_testdata/ERC721ABOE.td.sol b/test/_testdata/ERC721ABOE.td.sol index 70fa833..0503e9b 100644 --- a/test/_testdata/ERC721ABOE.td.sol +++ b/test/_testdata/ERC721ABOE.td.sol @@ -32,19 +32,19 @@ contract ERC721ABOETestData { uint256 public constant PHASE_ID_2 = 2; uint256 public constant P0_PRICE_ETH = 0.1 ether; - uint256 public constant P0_PRICE_ERC20 = 100e18; + uint256 public constant P0_PRICE_ERC20 = 100e6; uint256 public constant P0_START = 1680000000; uint256 public constant P0_END = 1680000100; uint256 public constant P0_MAX_MINT = 3; uint256 public constant P1_PRICE_ETH = 0.125 ether; - uint256 public constant P1_PRICE_ERC20 = 125e18; + uint256 public constant P1_PRICE_ERC20 = 125e6; uint256 public constant P1_START = 1680100001; uint256 public constant P1_END = 1680100100; uint256 public constant P1_MAX_MINT = 3; uint256 public constant P2_PRICE_ETH = 0.15 ether; - uint256 public constant P2_PRICE_ERC20 = 150e18; + uint256 public constant P2_PRICE_ERC20 = 150e6; uint256 public constant P2_START = 1680200001; uint256 public constant P2_END = 1680200100; uint256 public constant P2_MAX_MINT = 3; From 66ce78b061a8f0533a0ea5612bcd7be916f534af Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 14:37:16 +0100 Subject: [PATCH 49/74] updated limited edition implementation --- src/token/ERC721/ERC721ABLE.sol | 148 +++++++++++++++----------------- 1 file changed, 69 insertions(+), 79 deletions(-) diff --git a/src/token/ERC721/ERC721ABLE.sol b/src/token/ERC721/ERC721ABLE.sol index 5906da4..c9018b7 100644 --- a/src/token/ERC721/ERC721ABLE.sol +++ b/src/token/ERC721/ERC721ABLE.sol @@ -69,7 +69,7 @@ contract ERC721ABLE is ERC721AB { /** * @notice - * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` & `_kycSignature` are valid * * @param _to token recipient address (must be whitelisted) * @param _phaseId current minting phase (must be started) @@ -121,7 +121,7 @@ contract ERC721ABLE is ERC721AB { /** * @notice - * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` & `_kycSignature` are valid * * @param _to token recipient address (must be whitelisted) * @param _phaseId current minting phase (must be started) @@ -136,48 +136,12 @@ contract ERC721ABLE is ERC721AB { bytes calldata _signature, bytes calldata _kycSignature ) external { - // Perform before mint checks (KYC verification) - _beforeMint(_to, _kycSignature); - - // Check that the contract accepts ERC20 payment - if (address(acceptedCurrency) == address(0)) revert ABErrors.MINT_WITH_ERC20_NOT_AVAILABLE(); - - // Check that the requested minting phase has started - if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); - - // Get requested phase details - ABDataTypes.Phase memory phase = phases[_phaseId]; - - // Check that there are enough tokens available for sale - if (_totalMinted() + _quantity > maxSupply) { - revert ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE(); - } - - // Check if the current phase is private - if (!phase.isPublic) { - // Check that the user is included in the allowlist - if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { - revert ABErrors.NOT_ELIGIBLE(); - } - } - - // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase - if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); - - if (!acceptedCurrency.transferFrom(msg.sender, address(this), phase.priceERC20 * _quantity)) { - revert ABErrors.INCORRECT_ETH_SENT(); - } - - // Set quantity minted for `_to` during the current phase - mintedPerPhase[_to][_phaseId] += _quantity; - - // Mint `_quantity` amount to `_to` address - _mint(_to, _quantity); + _mintWithERC20(_to, _phaseId, _quantity, _signature, _kycSignature); } /** * @notice - * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` & `_kycSignature` are valid * * @param _to token recipient address (must be whitelisted) * @param _phaseId current minting phase (must be started) @@ -200,48 +164,12 @@ contract ERC721ABLE is ERC721AB { bytes calldata _signature, bytes calldata _kycSignature ) external { - // Perform before mint checks (KYC verification) - _beforeMint(_to, _kycSignature); - - // Check that the contract accepts ERC20 payment - if (address(acceptedCurrency) == address(0)) revert ABErrors.MINT_WITH_ERC20_NOT_AVAILABLE(); - - // Check that there are enough tokens available for sale - if (_totalMinted() + _quantity > maxSupply) { - revert ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE(); - } - - // Check that the requested minting phase has started - if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); - - // Get requested phase details - ABDataTypes.Phase memory phase = phases[_phaseId]; - - // Approve token spending using user's signature + // Approve token spending using user's permit signature IERC20Permit(address(acceptedCurrency)).permit( - msg.sender, address(this), phase.priceERC20 * _quantity, _deadline, _sigV, _sigR, _sigS + msg.sender, address(this), phases[_phaseId].priceERC20 * _quantity, _deadline, _sigV, _sigR, _sigS ); - // Check if the current phase is private - if (!phase.isPublic) { - // Check that the user is included in the allowlist - if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { - revert ABErrors.NOT_ELIGIBLE(); - } - } - - // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase - if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); - - if (!acceptedCurrency.transferFrom(msg.sender, address(this), phase.priceERC20 * _quantity)) { - revert ABErrors.INCORRECT_ETH_SENT(); - } - - // Set quantity minted for `_to` during the current phase - mintedPerPhase[_to][_phaseId] += _quantity; - - // Mint `_quantity` amount to `_to` address - _mint(_to, _quantity); + _mintWithERC20(_to, _phaseId, _quantity, _signature, _kycSignature); } // ____ __ ___ __ _ @@ -291,4 +219,66 @@ contract ERC721ABLE is ERC721AB { if (_maxSupply < _totalMinted()) revert ABErrors.INVALID_PARAMETER(); maxSupply = _maxSupply; } + + // ____ __ __ ______ __ _ + // / _/___ / /____ _________ ____ _/ / / ____/_ ______ _____/ /_(_)___ ____ _____ + // / // __ \/ __/ _ \/ ___/ __ \/ __ `/ / / /_ / / / / __ \/ ___/ __/ / __ \/ __ \/ ___/ + // _/ // / / / /_/ __/ / / / / / /_/ / / / __/ / /_/ / / / / /__/ /_/ / /_/ / / / (__ ) + // /___/_/ /_/\__/\___/_/ /_/ /_/\__,_/_/ /_/ \__,_/_/ /_/\___/\__/_/\____/_/ /_/____/ + + /** + * @notice + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid + * + * @param _to token recipient address (must be whitelisted) + * @param _phaseId current minting phase (must be started) + * @param _quantity quantity of tokens requested (must be less than max mint per phase) + * @param _signature signature to verify allowlist status + * @param _kycSignature signature to verify user's KYC status + */ + function _mintWithERC20( + address _to, + uint256 _phaseId, + uint256 _quantity, + bytes calldata _signature, + bytes calldata _kycSignature + ) internal { + // Perform before mint checks (KYC verification) + _beforeMint(_to, _kycSignature); + + // Check that the contract accepts ERC20 payment + if (address(acceptedCurrency) == address(0)) revert ABErrors.MINT_WITH_ERC20_NOT_AVAILABLE(); + + // Check that the requested minting phase has started + if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); + + // Get requested phase details + ABDataTypes.Phase memory phase = phases[_phaseId]; + + // Check that there are enough tokens available for sale + if (_totalMinted() + _quantity > maxSupply) { + revert ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE(); + } + + // Check if the current phase is private + if (!phase.isPublic) { + // Check that the user is included in the allowlist + if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { + revert ABErrors.NOT_ELIGIBLE(); + } + } + + // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase + if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); + + if (!acceptedCurrency.transferFrom(msg.sender, address(this), phase.priceERC20 * _quantity)) { + revert ABErrors.INCORRECT_ETH_SENT(); + } + + // Set quantity minted for `_to` during the current phase + mintedPerPhase[_to][_phaseId] += _quantity; + + // Mint `_quantity` amount to `_to` address + _mint(_to, _quantity); + } } From 76773fcf48427f2050bbbbc16ee9eacc033e358d Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 14:37:33 +0100 Subject: [PATCH 50/74] update unit tests for Limited Edition implementation --- test/token/ERC721/ERC721ABLE.t.sol | 330 +++++++++++++++++++++++++++-- 1 file changed, 311 insertions(+), 19 deletions(-) diff --git a/test/token/ERC721/ERC721ABLE.t.sol b/test/token/ERC721/ERC721ABLE.t.sol index 108c470..68cb1ea 100644 --- a/test/token/ERC721/ERC721ABLE.t.sol +++ b/test/token/ERC721/ERC721ABLE.t.sol @@ -36,9 +36,10 @@ contract ERC721ABTest is Test, ERC721ABTestData { /* Users */ address payable public alice; + uint256 public alicePkey = 1; address payable public bob; - address payable public karen; - address payable public dave; + uint256 public bobPkey = 2; + address payable public publisher; /* Contracts */ @@ -60,6 +61,10 @@ contract ERC721ABTest is Test, ERC721ABTestData { ERC721ABLE public nft; uint256 public constant DROP_ID_OFFSET = 10_000; + bytes32 public constant DOMAIN_SEPARATOR = 0x02fa7265e7c5d81118673727957699e4d68f74cd74b7db77da710fe8a2c7834f; + bytes32 public constant PERMIT_TYPEHASH = 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9; + + address public constant BASE_USDC = 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913; /* Environment Variables */ string BASE_RPC_URL = vm.envString("BASE_RPC"); @@ -73,22 +78,18 @@ contract ERC721ABTest is Test, ERC721ABTestData { genesisRecipient = vm.addr(100); /* Setup users */ - alice = payable(vm.addr(1)); - bob = payable(vm.addr(2)); - karen = payable(vm.addr(3)); - dave = payable(vm.addr(4)); + alice = payable(vm.addr(alicePkey)); + bob = payable(vm.addr(bobPkey)); publisher = payable(vm.addr(5)); treasury = payable(vm.addr(1000)); vm.deal(alice, 100 ether); + deal(address(BASE_USDC), alice, 1000e6); vm.deal(bob, 100 ether); - vm.deal(karen, 100 ether); - vm.deal(dave, 100 ether); + deal(address(BASE_USDC), bob, 1000e6); vm.label(alice, "alice"); vm.label(bob, "bob"); - vm.label(karen, "karen"); - vm.label(dave, "dave"); vm.label(publisher, "publisher"); vm.label(treasury, "treasury"); @@ -521,7 +522,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { nft.setDropPhases(phases); } - function test_mint() public { + function test_mintWithETH() public { vm.startPrank(publisher); nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -546,7 +547,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { assertEq(nft.balanceOf(alice), 1); } - function test_mint_dropSoldOut() public { + function test_mintWithETH_dropSoldOut() public { vm.startPrank(publisher); nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -578,7 +579,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { nft.mintWithETH{value: P0_PRICE_ETH}(bob, PHASE_ID_0, 1, signature, kycSignature); } - function test_mint_notEnoughTokenAvailable() public { + function test_mintWithETH_notEnoughTokenAvailable() public { vm.startPrank(publisher); nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -611,7 +612,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { nft.mintWithETH{value: P0_PRICE_ETH * bobMintQty}(bob, PHASE_ID_0, bobMintQty, signature, kycSignature); } - function test_mint_noPhaseSet() public { + function test_mintWithETH_noPhaseSet() public { vm.prank(publisher); nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -626,7 +627,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { nft.mintWithETH{value: P0_PRICE_ETH * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); } - function test_mint_incorrectETHSent() public { + function test_mintWithETH_incorrectETHSent() public { vm.startPrank(publisher); nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -663,7 +664,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.stopPrank(); } - function test_mint_maxMintPerAddress() public { + function test_mintWithETH_maxMintPerAddress() public { vm.startPrank(publisher); nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -694,7 +695,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.stopPrank(); } - function test_mint_phaseNotActive() public { + function test_mintWithETH_phaseNotActive() public { vm.startPrank(publisher); nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -725,7 +726,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.stopPrank(); } - function test_mint_notEligible() public { + function test_mintWithETH_notEligible() public { vm.startPrank(publisher); nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -755,7 +756,7 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.stopPrank(); } - function test_mint_public() public { + function test_mintWithETH_public() public { vm.startPrank(publisher); nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -785,6 +786,297 @@ contract ERC721ABTest is Test, ERC721ABTestData { vm.stopPrank(); } + function test_mintWithERC20() public { + vm.startPrank(publisher); + + nft.initDrop( + SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(BASE_USDC), URI + ); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + vm.stopPrank(); + + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + // Impersonate `alice` + vm.startPrank(alice); + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20); + nft.mintWithERC20(alice, PHASE_ID_0, 1, signature, kycSignature); + vm.stopPrank(); + + assertEq(nft.balanceOf(alice), 1); + } + + function test_mintWithERC20_dropSoldOut() public { + vm.startPrank(publisher); + nft.initDrop( + SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(BASE_USDC), URI + ); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 4, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + vm.stopPrank(); + + uint256 mintQty = 4; + + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + vm.startPrank(alice); + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * mintQty); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, signature, kycSignature); + vm.stopPrank(); + + signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); + kycSignature = _generateKycSignature(bob, 0); + + vm.startPrank(bob); + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20); + vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); + nft.mintWithERC20(bob, PHASE_ID_0, 1, signature, kycSignature); + vm.stopPrank(); + } + + function test_mintWithERC20_notEnoughTokenAvailable() public { + vm.startPrank(publisher); + nft.initDrop( + SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(BASE_USDC), URI + ); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + vm.stopPrank(); + + uint256 aliceMintQty = 3; + + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + vm.startPrank(alice); + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * aliceMintQty); + nft.mintWithERC20(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + vm.stopPrank(); + + uint256 bobMintQty = 2; + signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); + kycSignature = _generateKycSignature(bob, 0); + + vm.startPrank(bob); + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * bobMintQty); + vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); + nft.mintWithERC20(bob, PHASE_ID_0, bobMintQty, signature, kycSignature); + vm.stopPrank(); + } + + function test_mintWithERC20_noPhaseSet() public { + vm.prank(publisher); + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), BASE_USDC, URI); + + uint256 aliceMintQty = 3; + + // Create signature for `bob` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + vm.startPrank(alice); + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * aliceMintQty); + vm.expectRevert(); + nft.mintWithERC20(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + vm.stopPrank(); + } + + function test_mintWithERC20_maxMintPerAddress() public { + vm.startPrank(publisher); + nft.initDrop( + SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(BASE_USDC), URI + ); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + + vm.stopPrank(); + + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + // Impersonate `alice` + vm.startPrank(alice); + + uint256 mintQty = P0_MAX_MINT + 1; + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * mintQty); + + vm.expectRevert(ABErrors.MAX_MINT_PER_ADDRESS.selector); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, signature, kycSignature); + + vm.stopPrank(); + } + + function test_mintWithERC20_phaseNotActive() public { + vm.startPrank(publisher); + nft.initDrop( + SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(BASE_USDC), URI + ); + + // Set block.timestamp to be before the start of Phase 0 + vm.warp(P0_START - 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + + vm.stopPrank(); + + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + // Impersonate `alice` + vm.startPrank(alice); + + uint256 mintQty = 4; + + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * mintQty); + vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, signature, kycSignature); + + vm.stopPrank(); + } + + function test_mintWithERC20_notEligible() public { + vm.startPrank(publisher); + nft.initDrop( + SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(BASE_USDC), URI + ); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + + vm.stopPrank(); + + // Impersonate `alice` + vm.startPrank(alice); + + uint256 mintQty = 4; + + bytes memory invalidSignature = _generateInvalidSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * mintQty); + + vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); + + vm.stopPrank(); + } + + function test_mintWithERC20_public() public { + vm.startPrank(publisher); + nft.initDrop( + SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(BASE_USDC), URI + ); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PUBLIC_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + + vm.stopPrank(); + + bytes memory kycSignature = _generateKycSignature(alice, 0); + + // Impersonate `alice` + vm.startPrank(alice); + + uint256 mintQty = 4; + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * mintQty); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, "", kycSignature); + + assertEq(nft.balanceOf(alice), mintQty); + + vm.stopPrank(); + } + + function test_mintWithERC20Permit() public { + vm.startPrank(publisher); + + nft.initDrop(SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), BASE_USDC, URI); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + vm.stopPrank(); + + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + bytes32 hashStruct = keccak256(abi.encode(PERMIT_TYPEHASH, alice, address(nft), P0_PRICE_ERC20, 0, 1e18 days)); + bytes32 digest = keccak256(abi.encodePacked("\x19\x01", DOMAIN_SEPARATOR, hashStruct)); + + (uint8 v, bytes32 r, bytes32 s) = vm.sign(alicePkey, digest); + + // Impersonate `alice` + vm.prank(alice); + nft.mintWithERC20Permit(alice, PHASE_ID_0, 1, 1e18 days, v, r, s, signature, kycSignature); + + assertEq(nft.balanceOf(alice), 1); + } + function test_setSharePerToken_admin(uint256 _newShare) public { vm.assume(_newShare != SHARE_PER_TOKEN); vm.assume(_newShare < 1_000_000); From 8bf6d0eb9439c7916af8c0c8ce0108be5825bb89 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 14:37:38 +0100 Subject: [PATCH 51/74] cache --- forge-cache/solidity-files-cache.json | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 4b6c98f..7330eb2 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -7173,8 +7173,8 @@ } }, "src/token/ERC721/ERC721ABLE.sol": { - "lastModificationDate": 1701770179525, - "contentHash": "fbb060fbcf554010d316d64a0fa2307c", + "lastModificationDate": 1701783166392, + "contentHash": "a6d3937015a069a968adc41c0e363b52", "sourceName": "src/token/ERC721/ERC721ABLE.sol", "solcConfig": { "settings": { @@ -7928,8 +7928,8 @@ } }, "test/_testdata/ERC1155AB.td.sol": { - "lastModificationDate": 1701706882355, - "contentHash": "bd04bcac858f83f4de16c65ec439980d", + "lastModificationDate": 1701772177094, + "contentHash": "3cbee26ca119003d77f63f5cb840452b", "sourceName": "test/_testdata/ERC1155AB.td.sol", "solcConfig": { "settings": { @@ -7969,8 +7969,8 @@ } }, "test/_testdata/ERC721ABLE.td.sol": { - "lastModificationDate": 1701765032365, - "contentHash": "f056e73d5d66d48c4aaa34e2dec517a8", + "lastModificationDate": 1701772177094, + "contentHash": "af912b993a2c290ae842694a7da3e292", "sourceName": "test/_testdata/ERC721ABLE.td.sol", "solcConfig": { "settings": { @@ -8051,8 +8051,8 @@ } }, "test/_testdata/ERC721ABOE.td.sol": { - "lastModificationDate": 1701766193392, - "contentHash": "94fd86404344376e6259814213239c3b", + "lastModificationDate": 1701772177095, + "contentHash": "b7f1965d2b763481b6ec39413d9c79f9", "sourceName": "test/_testdata/ERC721ABOE.td.sol", "solcConfig": { "settings": { @@ -8504,8 +8504,8 @@ } }, "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1701770206435, - "contentHash": "386431bdeeadb4520430fdd274d9e908", + "lastModificationDate": 1701782983217, + "contentHash": "cf3807f04e0e45876b87a7f88e180b3b", "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", "solcConfig": { "settings": { From 377b83427947416a442759e54eca0aed7fbe587b Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 14:59:05 +0100 Subject: [PATCH 52/74] added custom error --- src/libraries/ABErrors.sol | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/libraries/ABErrors.sol b/src/libraries/ABErrors.sol index 3f864ef..a41fb85 100644 --- a/src/libraries/ABErrors.sol +++ b/src/libraries/ABErrors.sol @@ -80,4 +80,7 @@ library ABErrors { /// @dev Error returned when attempting to mint using ERC20 while it is not accepted error MINT_WITH_ERC20_NOT_AVAILABLE(); + + /// @dev Error returned when the ERC-20 transfer failed when minting NFTs + error ERROR_PROCEEDING_PAYMENT(); } From 38ae9b6d7d0f32e9f8435735cc408ac9da995c0b Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 14:59:18 +0100 Subject: [PATCH 53/74] update error msg --- src/token/ERC721/ERC721ABLE.sol | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/token/ERC721/ERC721ABLE.sol b/src/token/ERC721/ERC721ABLE.sol index c9018b7..42eaeea 100644 --- a/src/token/ERC721/ERC721ABLE.sol +++ b/src/token/ERC721/ERC721ABLE.sol @@ -228,7 +228,7 @@ contract ERC721ABLE is ERC721AB { /** * @notice - * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` & `_kycSignature` are valid * * @param _to token recipient address (must be whitelisted) * @param _phaseId current minting phase (must be started) @@ -271,8 +271,9 @@ contract ERC721ABLE is ERC721AB { // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); + // Transfer the ERC20 from the buyer to this contract if (!acceptedCurrency.transferFrom(msg.sender, address(this), phase.priceERC20 * _quantity)) { - revert ABErrors.INCORRECT_ETH_SENT(); + revert ABErrors.ERROR_PROCEEDING_PAYMENT(); } // Set quantity minted for `_to` during the current phase From 877f968bce15924ead5ab15b965da6f9908543aa Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 14:59:42 +0100 Subject: [PATCH 54/74] update Open Edition implementation (added ERC20 mint) --- src/token/ERC721/ERC721ABOE.sol | 113 ++++++++++++++- test/token/ERC721/ERC721ABOE.t.sol | 211 +++++++++++++++++++++++++++-- 2 files changed, 308 insertions(+), 16 deletions(-) diff --git a/src/token/ERC721/ERC721ABOE.sol b/src/token/ERC721/ERC721ABOE.sol index d75cb45..a8591a0 100644 --- a/src/token/ERC721/ERC721ABOE.sol +++ b/src/token/ERC721/ERC721ABOE.sol @@ -35,6 +35,9 @@ // SPDX-License-Identifier: MIT pragma solidity ^0.8.18; +/* Openzeppelin Contract */ +import {IERC20Permit} from "@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol"; + /* anotherblock Contract */ import {ERC721AB} from "src/token/ERC721/ERC721AB.sol"; @@ -71,7 +74,7 @@ contract ERC721ABOE is ERC721AB { * @param _signature signature to verify allowlist status * @param _kycSignature signature to verify user's KYC status */ - function mint( + function mintWithETH( address _to, uint256 _phaseId, uint256 _quantity, @@ -105,6 +108,59 @@ contract ERC721ABOE is ERC721AB { _mint(_to, _quantity); } + /** + * @notice + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` & `_kycSignature` are valid + * + * @param _to token recipient address (must be whitelisted) + * @param _phaseId current minting phase (must be started) + * @param _quantity quantity of tokens requested (must be less than max mint per phase) + * @param _signature signature to verify allowlist status + * @param _kycSignature signature to verify user's KYC status + */ + function mintWithERC20( + address _to, + uint256 _phaseId, + uint256 _quantity, + bytes calldata _signature, + bytes calldata _kycSignature + ) external { + _mintWithERC20(_to, _phaseId, _quantity, _signature, _kycSignature); + } + + /** + * @notice + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` & `_kycSignature` are valid + * + * @param _to token recipient address (must be whitelisted) + * @param _phaseId current minting phase (must be started) + * @param _quantity quantity of tokens requested (must be less than max mint per phase) + * @param _signature signature to verify allowlist status + * @param _deadline timestamp at which the permit signature expires + * @param _sigV V component of the permit signature + * @param _sigR R component of the permit signature + * @param _sigS S component of the permit signature + * @param _kycSignature signature to verify user's KYC status + */ + function mintWithERC20Permit( + address _to, + uint256 _phaseId, + uint256 _quantity, + uint256 _deadline, + uint8 _sigV, + bytes32 _sigR, + bytes32 _sigS, + bytes calldata _signature, + bytes calldata _kycSignature + ) external { + // Approve token spending using user's permit signature + IERC20Permit(address(acceptedCurrency)).permit( + msg.sender, address(this), phases[_phaseId].priceERC20 * _quantity, _deadline, _sigV, _sigR, _sigS + ); + + _mintWithERC20(_to, _phaseId, _quantity, _signature, _kycSignature); + } + // ____ __ ___ __ _ // / __ \____ / /_ __ / | ____/ /___ ___ (_)___ // / / / / __ \/ / / / / / /| |/ __ / __ `__ \/ / __ \ @@ -134,4 +190,59 @@ contract ERC721ABOE is ERC721AB { ) external virtual onlyOwner { _initDrop(_sharePerToken, _mintGenesis, _genesisRecipient, _royaltyCurrency, _acceptedCurrency, _baseUri); } + + // ____ __ __ ______ __ _ + // / _/___ / /____ _________ ____ _/ / / ____/_ ______ _____/ /_(_)___ ____ _____ + // / // __ \/ __/ _ \/ ___/ __ \/ __ `/ / / /_ / / / / __ \/ ___/ __/ / __ \/ __ \/ ___/ + // _/ // / / / /_/ __/ / / / / / /_/ / / / __/ / /_/ / / / / /__/ /_/ / /_/ / / / (__ ) + // /___/_/ /_/\__/\___/_/ /_/ /_/\__,_/_/ /_/ \__,_/_/ /_/\___/\__/_/\____/_/ /_/____/ + + /** + * @notice + * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid + * + * @param _to token recipient address (must be whitelisted) + * @param _phaseId current minting phase (must be started) + * @param _quantity quantity of tokens requested (must be less than max mint per phase) + * @param _signature signature to verify allowlist status + * @param _kycSignature signature to verify user's KYC status + */ + function _mintWithERC20( + address _to, + uint256 _phaseId, + uint256 _quantity, + bytes calldata _signature, + bytes calldata _kycSignature + ) internal { + // Perform before mint checks (KYC verification) + _beforeMint(_to, _kycSignature); + + // Check that the contract accepts ERC20 payment + if (address(acceptedCurrency) == address(0)) revert ABErrors.MINT_WITH_ERC20_NOT_AVAILABLE(); + + // Check that the requested minting phase has started + if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); + + // Get requested phase details + ABDataTypes.Phase memory phase = phases[_phaseId]; + + // Check if the current phase is private + if (!phase.isPublic) { + // Check that the user is included in the allowlist + if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { + revert ABErrors.NOT_ELIGIBLE(); + } + } + + // Transfer the ERC20 from the buyer to this contract + if (!acceptedCurrency.transferFrom(msg.sender, address(this), phase.priceERC20 * _quantity)) { + revert ABErrors.ERROR_PROCEEDING_PAYMENT(); + } + + // Set quantity minted for `_to` during the current phase + mintedPerPhase[_to][_phaseId] += _quantity; + + // Mint `_quantity` amount to `_to` address + _mint(_to, _quantity); + } } diff --git a/test/token/ERC721/ERC721ABOE.t.sol b/test/token/ERC721/ERC721ABOE.t.sol index 927c15f..a62349c 100644 --- a/test/token/ERC721/ERC721ABOE.t.sol +++ b/test/token/ERC721/ERC721ABOE.t.sol @@ -35,7 +35,10 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { /* Users */ address payable public alice; + uint256 public alicePkey = 1; address payable public bob; + uint256 public bobPkey = 2; + address payable public publisher; /* Contracts */ @@ -58,6 +61,10 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { ERC721ABOE public nft; uint256 public constant DROP_ID_OFFSET = 10_000; + bytes32 public constant DOMAIN_SEPARATOR = 0x02fa7265e7c5d81118673727957699e4d68f74cd74b7db77da710fe8a2c7834f; + bytes32 public constant PERMIT_TYPEHASH = 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9; + + address public constant BASE_USDC = 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913; /* Environment Variables */ string BASE_RPC_URL = vm.envString("BASE_RPC"); @@ -71,13 +78,15 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { genesisRecipient = vm.addr(100); /* Setup users */ - alice = payable(vm.addr(1)); - bob = payable(vm.addr(2)); + alice = payable(vm.addr(alicePkey)); + bob = payable(vm.addr(bobPkey)); publisher = payable(vm.addr(5)); treasury = payable(vm.addr(1000)); vm.deal(alice, 100 ether); + deal(address(BASE_USDC), alice, 1000e6); vm.deal(bob, 100 ether); + deal(address(BASE_USDC), bob, 1000e6); vm.label(alice, "alice"); vm.label(bob, "bob"); @@ -502,7 +511,7 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { nft.setDropPhases(phases); } - function test_mint() public { + function test_mintWithETH() public { vm.startPrank(publisher); nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -523,11 +532,11 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { // Impersonate `alice` vm.prank(alice); - nft.mint{value: P0_PRICE_ETH}(alice, PHASE_ID_0, 1, signature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH}(alice, PHASE_ID_0, 1, signature, kycSignature); assertEq(nft.balanceOf(alice), 1); } - function test_mint_noPhaseSet() public { + function test_mintWithETH_noPhaseSet() public { vm.prank(publisher); nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -539,10 +548,10 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { vm.prank(alice); vm.expectRevert(); - nft.mint{value: P0_PRICE_ETH * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * aliceMintQty}(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); } - function test_mint_incorrectETHSent() public { + function test_mintWithETH_incorrectETHSent() public { vm.startPrank(publisher); nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -571,15 +580,15 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { uint256 tooLowPrice = P0_PRICE_ETH * (mintQty - 1); vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); - nft.mint{value: tooHighPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mintWithETH{value: tooHighPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); - nft.mint{value: tooLowPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mintWithETH{value: tooLowPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); } - function test_mint_phaseNotActive() public { + function test_mintWithETH_phaseNotActive() public { vm.startPrank(publisher); nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -605,12 +614,12 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { uint256 mintQty = 4; vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); - nft.mint{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, signature, kycSignature); vm.stopPrank(); } - function test_mint_notEligible() public { + function test_mintWithETH_notEligible() public { vm.startPrank(publisher); nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -635,12 +644,12 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { bytes memory kycSignature = _generateKycSignature(alice, 0); vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); - nft.mint{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); vm.stopPrank(); } - function test_mint_public() public { + function test_mintWithETH_public() public { vm.startPrank(publisher); nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(0), URI); @@ -663,13 +672,185 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { uint256 mintQty = 4; - nft.mint{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, "", kycSignature); + nft.mintWithETH{value: P0_PRICE_ETH * mintQty}(alice, PHASE_ID_0, mintQty, "", kycSignature); assertEq(nft.balanceOf(alice), mintQty); vm.stopPrank(); } + function test_mintWithERC20() public { + vm.startPrank(publisher); + + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(BASE_USDC), URI); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + vm.stopPrank(); + + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + // Impersonate `alice` + vm.startPrank(alice); + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20); + nft.mintWithERC20(alice, PHASE_ID_0, 1, signature, kycSignature); + vm.stopPrank(); + + assertEq(nft.balanceOf(alice), 1); + } + + function test_mintWithERC20_noPhaseSet() public { + vm.prank(publisher); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), BASE_USDC, URI); + + uint256 aliceMintQty = 3; + + // Create signature for `bob` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + vm.startPrank(alice); + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * aliceMintQty); + vm.expectRevert(); + nft.mintWithERC20(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); + vm.stopPrank(); + } + + function test_mintWithERC20_phaseNotActive() public { + vm.startPrank(publisher); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(BASE_USDC), URI); + + // Set block.timestamp to be before the start of Phase 0 + vm.warp(P0_START - 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + + vm.stopPrank(); + + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + // Impersonate `alice` + vm.startPrank(alice); + + uint256 mintQty = 4; + + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * mintQty); + vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, signature, kycSignature); + + vm.stopPrank(); + } + + function test_mintWithERC20_notEligible() public { + vm.startPrank(publisher); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(BASE_USDC), URI); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + + vm.stopPrank(); + + // Impersonate `alice` + vm.startPrank(alice); + + uint256 mintQty = 4; + + bytes memory invalidSignature = _generateInvalidSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * mintQty); + + vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); + + vm.stopPrank(); + } + + function test_mintWithERC20_public() public { + vm.startPrank(publisher); + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(BASE_USDC), URI); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, 10, PUBLIC_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + + vm.stopPrank(); + + bytes memory kycSignature = _generateKycSignature(alice, 0); + + // Impersonate `alice` + vm.startPrank(alice); + + uint256 mintQty = 4; + IERC20(BASE_USDC).approve(address(nft), P0_PRICE_ERC20 * mintQty); + nft.mintWithERC20(alice, PHASE_ID_0, mintQty, "", kycSignature); + + assertEq(nft.balanceOf(alice), mintQty); + + vm.stopPrank(); + } + + function test_mintWithERC20Permit() public { + vm.startPrank(publisher); + + nft.initDrop(SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), BASE_USDC, URI); + + // Set block.timestamp to be after the start of Phase 0 + vm.warp(P0_START + 1); + + // Set the phases + ABDataTypes.Phase memory phase0 = + ABDataTypes.Phase(P0_START, P0_END, P0_PRICE_ETH, P0_PRICE_ERC20, P0_MAX_MINT, PRIVATE_PHASE); + ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); + phases[0] = phase0; + nft.setDropPhases(phases); + vm.stopPrank(); + + // Create signature for `alice` dropId 0 and phaseId 0 + bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); + bytes memory kycSignature = _generateKycSignature(alice, 0); + + bytes32 hashStruct = keccak256(abi.encode(PERMIT_TYPEHASH, alice, address(nft), P0_PRICE_ERC20, 0, 1e18 days)); + bytes32 digest = keccak256(abi.encodePacked("\x19\x01", DOMAIN_SEPARATOR, hashStruct)); + + (uint8 v, bytes32 r, bytes32 s) = vm.sign(alicePkey, digest); + + // Impersonate `alice` + vm.prank(alice); + nft.mintWithERC20Permit(alice, PHASE_ID_0, 1, 1e18 days, v, r, s, signature, kycSignature); + + assertEq(nft.balanceOf(alice), 1); + } + function test_setSharePerToken_admin(uint256 _newShare) public { vm.assume(_newShare != SHARE_PER_TOKEN); vm.assume(_newShare < 1_000_000); From 86358880dca00fba5c1d32498a37a8565b75e837 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 15:01:10 +0100 Subject: [PATCH 55/74] cache --- forge-cache/solidity-files-cache.json | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 7330eb2..04cbf02 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -6862,8 +6862,8 @@ } }, "src/libraries/ABErrors.sol": { - "lastModificationDate": 1701770170362, - "contentHash": "92b577de8fe21ade7000129e7ce11c1a", + "lastModificationDate": 1701784052020, + "contentHash": "a63b071cfa179773d36b3b758b8ff206", "sourceName": "src/libraries/ABErrors.sol", "solcConfig": { "settings": { @@ -7173,8 +7173,8 @@ } }, "src/token/ERC721/ERC721ABLE.sol": { - "lastModificationDate": 1701783166392, - "contentHash": "a6d3937015a069a968adc41c0e363b52", + "lastModificationDate": 1701784056651, + "contentHash": "65ed9675609d8ac3007fd9954d5aab8c", "sourceName": "src/token/ERC721/ERC721ABLE.sol", "solcConfig": { "settings": { @@ -7235,8 +7235,8 @@ } }, "src/token/ERC721/ERC721ABOE.sol": { - "lastModificationDate": 1701706755817, - "contentHash": "6775685d5c1c3c97dbe6b95ef0b911d3", + "lastModificationDate": 1701784138764, + "contentHash": "007099e235f4e0043240c421e63b7a68", "sourceName": "src/token/ERC721/ERC721ABOE.sol", "solcConfig": { "settings": { @@ -7274,6 +7274,7 @@ "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", + "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "lib/openzeppelin-contracts/contracts/utils/Strings.sol", "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", @@ -7352,7 +7353,7 @@ } }, "src/utils/ABKYCModule.sol": { - "lastModificationDate": 1700731414221, + "lastModificationDate": 1701679348300, "contentHash": "952daa693fab5b97f1019870c1992446", "sourceName": "src/utils/ABKYCModule.sol", "solcConfig": { @@ -8647,8 +8648,8 @@ } }, "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1701767627919, - "contentHash": "aa57b0f2f5b3a2da1b19ab9235af1707", + "lastModificationDate": 1701784655497, + "contentHash": "e1ed034ca0afdfd3a3077328fca464b3", "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", "solcConfig": { "settings": { From 33428545701358bbdbe830eae52b06cc80a83eef Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 5 Dec 2023 15:03:08 +0100 Subject: [PATCH 56/74] remove old contract & tests --- src/token/ERC721/ERC721ABLECoin.sol | 338 ------ test/_testdata/ERC721ABLECoin.td.sol | 54 - test/token/ERC721/ERC721ABLECoin.t.sol | 1331 ------------------------ 3 files changed, 1723 deletions(-) delete mode 100644 src/token/ERC721/ERC721ABLECoin.sol delete mode 100644 test/_testdata/ERC721ABLECoin.td.sol delete mode 100644 test/token/ERC721/ERC721ABLECoin.t.sol diff --git a/src/token/ERC721/ERC721ABLECoin.sol b/src/token/ERC721/ERC721ABLECoin.sol deleted file mode 100644 index dab0846..0000000 --- a/src/token/ERC721/ERC721ABLECoin.sol +++ /dev/null @@ -1,338 +0,0 @@ -// ██████████████████████████████████ -// ██████████████████████████████████ -// ██████████████████████████████████ -// ██████████████████████████████████ -// ██████████████████████████████████ -// ██████████████████████████████████ -// ██████████████████████████████████ -// ██████████████████████████████████ -// ██████████████████████████████████ -// ████████████████████████ ██████████ -// ████████████████████████ ██████████ -// ████████████████████████ ██████████ -// ████████████████████████ ██████████ -// ████████████████████ -// ████████████████████ -// ████████████████████ -// ████████████████████ -// -// -// █████╗ ███╗ ██╗ ██████╗ ████████╗██╗ ██╗███████╗██████╗ ██████╗ ██╗ ██████╗ ██████╗██╗ ██╗ -// ██╔══██╗████╗ ██║██╔═══██╗╚══██╔══╝██║ ██║██╔════╝██╔══██╗██╔══██╗██║ ██╔═══██╗██╔════╝██║ ██╔╝ -// ███████║██╔██╗ ██║██║ ██║ ██║ ███████║█████╗ ██████╔╝██████╔╝██║ ██║ ██║██║ █████╔╝ -// ██╔══██║██║╚██╗██║██║ ██║ ██║ ██╔══██║██╔══╝ ██╔══██╗██╔══██╗██║ ██║ ██║██║ ██╔═██╗ -// ██║ ██║██║ ╚████║╚██████╔╝ ██║ ██║ ██║███████╗██║ ██║██████╔╝███████╗╚██████╔╝╚██████╗██║ ██╗ -// ╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝╚═════╝ ╚══════╝ ╚═════╝ ╚═════╝╚═╝ ╚═╝ -// - -/** - * @title ERC721ABLE - * @author anotherblock Technical Team - * @notice anotherblock ERC721 contract used for regular mint mechanism & limited edition - * - */ - -// SPDX-License-Identifier: MIT -pragma solidity ^0.8.18; - -/* Openzeppelin Contract */ -import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import {IERC20Permit} from "@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol"; - -/* anotherblock Contract */ -import {ERC721AB} from "src/token/ERC721/ERC721AB.sol"; - -/* anotherblock Libraries */ -import {ABDataTypes} from "src/libraries/ABDataTypes.sol"; -import {ABErrors} from "src/libraries/ABErrors.sol"; - -contract ERC721ABLECoin is ERC721AB { - // _____ __ __ - // / ___// /_____ _/ /____ _____ - // \__ \/ __/ __ `/ __/ _ \/ ___/ - // ___/ / /_/ /_/ / /_/ __(__ ) - // /____/\__/\__,_/\__/\___/____/ - - /// @dev Supply cap for this collection - uint256 public maxSupply; - - /// @dev Price denominated in `mintCurrency` - uint256 public priceCurrency; - - /// @dev Token address accepted to mint NFTs - IERC20 public mintCurrency; - - /// @dev Implementation Type - bytes32 public constant IMPLEMENTATION_TYPE = keccak256("LIMITED_EDITION_COIN"); - - /// @dev ERC721AB implementation version - uint8 public constant IMPLEMENTATION_VERSION = 1; - - // ______ __ __ - // / ____/___ ____ _____/ /________ _______/ /_____ _____ - // / / / __ \/ __ \/ ___/ __/ ___/ / / / ___/ __/ __ \/ ___/ - // / /___/ /_/ / / / (__ ) /_/ / / /_/ / /__/ /_/ /_/ / / - // \____/\____/_/ /_/____/\__/_/ \__,_/\___/\__/\____/_/ - - /** - * @notice - * Contract Constructor - */ - /// @custom:oz-upgrades-unsafe-allow constructor - constructor() { - _disableInitializers(); - } - - // ______ __ __ ______ __ _ - // / ____/ __/ /____ _________ ____ _/ / / ____/_ ______ _____/ /_(_)___ ____ _____ - // / __/ | |/_/ __/ _ \/ ___/ __ \/ __ `/ / / /_ / / / / __ \/ ___/ __/ / __ \/ __ \/ ___/ - // / /____> maxSupply) { - revert ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE(); - } - - // Check if the current phase is private - if (!phase.isPublic) { - // Check that the user is included in the allowlist - if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { - revert ABErrors.NOT_ELIGIBLE(); - } - } - - // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase - if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); - - // Check that user is sending the correct amount of ETH (will revert if user send too much or not enough) - if (msg.value != phase.price * _quantity) revert ABErrors.INCORRECT_ETH_SENT(); - - // Set quantity minted for `_to` during the current phase - mintedPerPhase[_to][_phaseId] += _quantity; - - // Mint `_quantity` amount to `_to` address - _mint(_to, _quantity); - } - - /** - * @notice - * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid - * - * @param _to token recipient address (must be whitelisted) - * @param _phaseId current minting phase (must be started) - * @param _quantity quantity of tokens requested (must be less than max mint per phase) - * @param _signature signature to verify allowlist status - * @param _kycSignature signature to verify user's KYC status - */ - function mintWithERC20( - address _to, - uint256 _phaseId, - uint256 _quantity, - bytes calldata _signature, - bytes calldata _kycSignature - ) external { - _mintWithERC20(_to, _phaseId, _quantity, _signature, _kycSignature); - } - - /** - * @notice - * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid - * - * @param _to token recipient address (must be whitelisted) - * @param _phaseId current minting phase (must be started) - * @param _quantity quantity of tokens requested (must be less than max mint per phase) - * @param _signature signature to verify allowlist status - * @param _kycSignature signature to verify user's KYC status - */ - function mintWithERC20Permit( - address _to, - uint256 _phaseId, - uint256 _quantity, - uint256 deadline, - uint8 v, - bytes32 r, - bytes32 s, - bytes calldata _signature, - bytes calldata _kycSignature - ) external { - IERC20Permit(address(mintCurrency)).permit( - msg.sender, address(this), priceCurrency * _quantity, deadline, v, r, s - ); - _mintWithERC20(_to, _phaseId, _quantity, _signature, _kycSignature); - } - - // ____ __ ___ __ _ - // / __ \____ / /_ __ / | ____/ /___ ___ (_)___ - // / / / / __ \/ / / / / / /| |/ __ / __ `__ \/ / __ \ - // / /_/ / / / / / /_/ / / ___ / /_/ / / / / / / / / / / - // \____/_/ /_/_/\__, / /_/ |_\__,_/_/ /_/ /_/_/_/ /_/ - // /____/ - - /** - * @notice - * Initialize the Drop parameters - * Only the contract owner can perform this operation - * - * @param _maxSupply supply cap for this drop - * @param _sharePerToken percentage ownership of the full master right for one token (to be divided by 1e6) - * @param _mintGenesis amount of genesis tokens to be minted - * @param _genesisRecipient recipient address of genesis tokens - * @param _royaltyCurrency royalty currency contract address - * @param _mintCurrency mint currency contract address - * @param _baseUri base URI for this drop - */ - function initDrop( - uint256 _priceCurrency, - uint256 _maxSupply, - uint256 _sharePerToken, - uint256 _mintGenesis, - address _genesisRecipient, - address _royaltyCurrency, - address _mintCurrency, - string calldata _baseUri - ) external onlyOwner { - // Set the accepted payment token - mintCurrency = IERC20(_mintCurrency); - - // Set the price denominated in `mintCurrency` - priceCurrency = _priceCurrency; - - // Set supply cap - maxSupply = _maxSupply; - if (_mintGenesis > _maxSupply) revert ABErrors.INVALID_PARAMETER(); - - _initDrop(_sharePerToken, _mintGenesis, _genesisRecipient, _royaltyCurrency, _baseUri); - } - - /** - * @notice - * Set the maximum supply - * Only the contract owner can perform this operation - * - * @param _maxSupply new maximum supply to be set - */ - function setMaxSupply(uint256 _maxSupply) external onlyOwner { - if (_maxSupply < _totalMinted()) revert ABErrors.INVALID_PARAMETER(); - maxSupply = _maxSupply; - } - - /** - * @notice - * Withdraw the mint proceeds (ERC20) from this contract to the caller - * Only the contract owner can perform this operation - * - */ - function withdrawERC20ToRightholder() external onlyOwner { - (address abTreasury, uint256 fee) = abDataRegistry.getPayoutDetails(publisher, dropId); - - if (abTreasury == address(0)) revert ABErrors.INVALID_PARAMETER(); - - uint256 balance = mintCurrency.balanceOf(address(this)); - uint256 amountToRH = balance * fee / 10_000; - uint256 amountToTreasury = balance - amountToRH; - - if (amountToTreasury > 0) { - bool success = mintCurrency.transfer(abTreasury, amountToTreasury); - if (!success) revert ABErrors.TRANSFER_FAILED(); - } - - if (amountToRH > 0) { - bool success = mintCurrency.transfer(publisher, amountToRH); - if (!success) revert ABErrors.TRANSFER_FAILED(); - } - } - - /** - * @notice - * Withdraw ERC20 tokens from this contract to the caller - * Only the contract owner can perform this operation - * - * @param _token token contract address to be withdrawn - * @param _amount amount to be withdrawn - */ - function withdrawERC20(address _token, uint256 _amount) external virtual override onlyOwner { - if (_token == address(mintCurrency)) revert ABErrors.INVALID_PARAMETER(); - // Transfer amount of underlying token to the caller - IERC20(_token).transfer(msg.sender, _amount); - } - - /** - * @notice - * Mint `_quantity` tokens to `_to` address based on the current `_phaseId` if `_signature` is valid - * - * @param _to token recipient address (must be whitelisted) - * @param _phaseId current minting phase (must be started) - * @param _quantity quantity of tokens requested (must be less than max mint per phase) - * @param _signature signature to verify allowlist status - * @param _kycSignature signature to verify user's KYC status - */ - function _mintWithERC20( - address _to, - uint256 _phaseId, - uint256 _quantity, - bytes calldata _signature, - bytes calldata _kycSignature - ) internal { - // Perform before mint checks (KYC verification) - _beforeMint(_to, _kycSignature); - - // Check that the requested minting phase has started - if (!_isPhaseActive(_phaseId)) revert ABErrors.PHASE_NOT_ACTIVE(); - - // Get requested phase details - ABDataTypes.Phase memory phase = phases[_phaseId]; - - // Check that there are enough tokens available for sale - if (_totalMinted() + _quantity > maxSupply) { - revert ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE(); - } - - // Check if the current phase is private - if (!phase.isPublic) { - // Check that the user is included in the allowlist - if (!abVerifier.verifySignature721(_to, address(this), _phaseId, _signature)) { - revert ABErrors.NOT_ELIGIBLE(); - } - } - - // Check that user did not mint / is not asking to mint more than the max mint per address for the current phase - if (mintedPerPhase[_to][_phaseId] + _quantity > phase.maxMint) revert ABErrors.MAX_MINT_PER_ADDRESS(); - - if (!IERC20(mintCurrency).transferFrom(msg.sender, address(this), priceCurrency * _quantity)) { - revert ABErrors.INCORRECT_ETH_SENT(); - } - - // Set quantity minted for `_to` during the current phase - mintedPerPhase[_to][_phaseId] += _quantity; - - // Mint `_quantity` amount to `_to` address - _mint(_to, _quantity); - } -} diff --git a/test/_testdata/ERC721ABLECoin.td.sol b/test/_testdata/ERC721ABLECoin.td.sol deleted file mode 100644 index a131464..0000000 --- a/test/_testdata/ERC721ABLECoin.td.sol +++ /dev/null @@ -1,54 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.8.18; - -contract ERC721ABCoinTestData { - /* Superfluid Host */ - address public constant SF_HOST = 0x4C073B3baB6d8826b8C5b229f3cfdC1eC6E47E74; - - /* Roles Hash */ - bytes32 public constant DEFAULT_ADMIN_ROLE_HASH = 0x0000000000000000000000000000000000000000000000000000000000000000; - bytes32 public constant PUBLISHER_ROLE_HASH = keccak256("PUBLISHER_ROLE"); - bytes32 public constant AB_ADMIN_ROLE_HASH = keccak256("AB_ADMIN_ROLE"); - bytes32 public constant FACTORY_ROLE_HASH = keccak256("FACTORY_ROLE"); - - /* Test Data */ - string public constant MOCK_TOKEN_NAME = "Mock Token"; - string public constant MOCK_TOKEN_SYMBOL = "MOCK"; - uint256 public constant PUBLISHER_FEE = 9_000; - uint256 public constant DROP_SPECIFIC_FEE = 5_000; - uint256 public constant PRICE = 0.1 ether; - uint256 public constant PRICE_CURRENCY = 100e18; - uint256 public constant PRICE_USDC = 100e6; - - uint256 public constant SUPPLY = 5; - uint256 public constant SHARE_PER_TOKEN = 90_000; - uint256 public constant MINT_GENESIS = 1; - uint256 public constant UNITS_PRECISION = 1_000; - string public constant NAME = "name"; - string public constant SYMBOL = "SYMBOL"; - string public constant URI = "http://uri.ipfs/"; - bytes32 public constant SALT = "SALT"; - bytes32 public constant SALT_2 = "SALT_2"; - - bool public constant PUBLIC_PHASE = true; - bool public constant PRIVATE_PHASE = false; - - uint256 public constant PHASE_ID_0 = 0; - uint256 public constant PHASE_ID_1 = 1; - uint256 public constant PHASE_ID_2 = 2; - - uint256 public constant P0_PRICE = 0.1 ether; - uint256 public constant P0_START = 1680000000; - uint256 public constant P0_END = 1680000100; - uint256 public constant P0_MAX_MINT = 3; - - uint256 public constant P1_PRICE = 0.125 ether; - uint256 public constant P1_START = 1680100001; - uint256 public constant P1_END = 1680100100; - uint256 public constant P1_MAX_MINT = 3; - - uint256 public constant P2_PRICE = 0.15 ether; - uint256 public constant P2_START = 1680200001; - uint256 public constant P2_END = 1680200100; - uint256 public constant P2_MAX_MINT = 3; -} diff --git a/test/token/ERC721/ERC721ABLECoin.t.sol b/test/token/ERC721/ERC721ABLECoin.t.sol deleted file mode 100644 index 9593f39..0000000 --- a/test/token/ERC721/ERC721ABLECoin.t.sol +++ /dev/null @@ -1,1331 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.8.18; - -import "forge-std/Test.sol"; - -import {ERC721ABLECoin} from "src/token/ERC721/ERC721ABLECoin.sol"; -import {ERC1155AB} from "src/token/ERC1155/ERC1155AB.sol"; -import {ABDataRegistry} from "src/utils/ABDataRegistry.sol"; -import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; -import {ABVerifier} from "src/utils/ABVerifier.sol"; -import {ABKYCModule} from "src/utils/ABKYCModule.sol"; -import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; -import {ABDataTypes} from "src/libraries/ABDataTypes.sol"; -import {ABErrors} from "src/libraries/ABErrors.sol"; - -import {ABSuperToken} from "test/_mocks/ABSuperToken.sol"; -import {MockToken} from "test/_mocks/MockToken.sol"; -import {ERC721ABCoinTestData} from "test/_testdata/ERC721ABLECoin.td.sol"; - -import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import {ECDSA} from "@openzeppelin/contracts/utils/cryptography/ECDSA.sol"; -import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; -import {ProxyAdmin} from "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol"; - -/* solhint-disable */ -contract ERC721ABLECoinTest is Test, ERC721ABCoinTestData { - using ECDSA for bytes32; - - /* Admin */ - uint256 public abSignerPkey = 69; - address public abSigner; - uint256 public kycSignerPkey = 420; - address public kycSigner; - address public genesisRecipient; - address payable public treasury; - - /* Users */ - address payable public alice; - uint256 public alicePkey = 1; - address payable public bob; - uint256 public bobPkey = 2; - - address payable public publisher; - - /* Contracts */ - ABVerifier public abVerifier; - ABSuperToken public royaltyToken; - MockToken public mockUSDC; - ABDataRegistry public abDataRegistry; - AnotherCloneFactory public anotherCloneFactory; - ABKYCModule public abKYCModule; - ABRoyalty public royaltyImpl; - ERC721ABLECoin public erc721Impl; - ERC1155AB public erc1155Impl; - ProxyAdmin public proxyAdmin; - TransparentUpgradeableProxy public anotherCloneFactoryProxy; - TransparentUpgradeableProxy public abDataRegistryProxy; - TransparentUpgradeableProxy public abVerifierProxy; - TransparentUpgradeableProxy public abKYCModuleProxy; - - ERC721ABLECoin public nft; - - uint256 public constant DROP_ID_OFFSET = 10_000; - bytes32 public constant DOMAIN_SEPARATOR = 0x02fa7265e7c5d81118673727957699e4d68f74cd74b7db77da710fe8a2c7834f; - bytes32 public constant PERMIT_TYPEHASH = 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9; - - address public constant BASE_USDC = 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913; - - /* Environment Variables */ - string BASE_RPC_URL = vm.envString("BASE_RPC"); - - function setUp() public { - vm.selectFork(vm.createFork(BASE_RPC_URL)); - - /* Setup admins */ - abSigner = vm.addr(abSignerPkey); - kycSigner = vm.addr(kycSignerPkey); - genesisRecipient = vm.addr(100); - - /* Setup users */ - alice = payable(vm.addr(alicePkey)); - bob = payable(vm.addr(bobPkey)); - publisher = payable(vm.addr(5)); - treasury = payable(vm.addr(1000)); - - vm.deal(alice, 100 ether); - deal(address(BASE_USDC), alice, 1000e6); - vm.deal(bob, 100 ether); - deal(address(BASE_USDC), bob, 1000e6); - - vm.label(alice, "alice"); - vm.label(bob, "bob"); - vm.label(publisher, "publisher"); - vm.label(treasury, "treasury"); - - /* Contracts Deployments */ - proxyAdmin = new ProxyAdmin(); - mockUSDC = new MockToken(MOCK_TOKEN_NAME, MOCK_TOKEN_SYMBOL); - - vm.label(address(mockUSDC), "mockUSDC"); - mockUSDC.mint(alice, 1000e18); - mockUSDC.mint(bob, 1000e18); - - royaltyToken = new ABSuperToken(SF_HOST); - royaltyToken.initialize(IERC20(address(0)), 18, "fakeSuperToken", "FST"); - vm.label(address(royaltyToken), "royaltyToken"); - - abVerifierProxy = new TransparentUpgradeableProxy( - address(new ABVerifier()), - address(proxyAdmin), - abi.encodeWithSelector(ABVerifier.initialize.selector, abSigner) - ); - abVerifier = ABVerifier(address(abVerifierProxy)); - vm.label(address(abVerifier), "abVerifier"); - - abKYCModuleProxy = new TransparentUpgradeableProxy( - address(new ABKYCModule()), - address(proxyAdmin), - abi.encodeWithSelector(ABKYCModule.initialize.selector, kycSigner) - ); - abKYCModule = ABKYCModule(address(abKYCModuleProxy)); - vm.label(address(abKYCModule), "abKYCModule"); - - erc1155Impl = new ERC1155AB(); - vm.label(address(erc1155Impl), "erc1155Impl"); - - erc721Impl = new ERC721ABLECoin(); - vm.label(address(erc721Impl), "erc721Impl"); - - royaltyImpl = new ABRoyalty(); - vm.label(address(royaltyImpl), "royaltyImpl"); - - abDataRegistryProxy = new TransparentUpgradeableProxy( - address(new ABDataRegistry()), - address(proxyAdmin), - abi.encodeWithSelector(ABDataRegistry.initialize.selector, DROP_ID_OFFSET, treasury) - ); - - abDataRegistry = ABDataRegistry(address(abDataRegistryProxy)); - vm.label(address(abDataRegistry), "abDataRegistry"); - - anotherCloneFactoryProxy = new TransparentUpgradeableProxy( - address(new AnotherCloneFactory()), - address(proxyAdmin), - abi.encodeWithSelector(AnotherCloneFactory.initialize.selector, - address(abDataRegistry), - address(abVerifier), - address(erc721Impl), - address(erc1155Impl), - address(royaltyImpl) - ) - ); - - anotherCloneFactory = AnotherCloneFactory(address(anotherCloneFactoryProxy)); - - vm.label(address(anotherCloneFactory), "anotherCloneFactory"); - - /* Setup Access Control Roles */ - anotherCloneFactory.grantRole(AB_ADMIN_ROLE_HASH, address(this)); - - /* Init contracts params */ - abDataRegistry.grantRole(keccak256("FACTORY_ROLE"), address(anotherCloneFactory)); - - anotherCloneFactory.setABKYCModule(address(abKYCModule)); - anotherCloneFactory.createPublisherProfile(publisher, PUBLISHER_FEE); - - vm.prank(publisher); - anotherCloneFactory.createCollection721(NAME, SALT); - - (address nftAddr,) = anotherCloneFactory.collections(0); - - nft = ERC721ABLECoin(nftAddr); - } - - function test_initialize() public { - TransparentUpgradeableProxy erc721proxy = new TransparentUpgradeableProxy( - address(new ERC721ABLECoin()), - address(proxyAdmin), - "" - ); - - nft = ERC721ABLECoin(address(erc721proxy)); - nft.initialize(publisher, address(abDataRegistry), address(abVerifier), address(abKYCModule), NAME); - - assertEq(address(nft.abDataRegistry()), address(abDataRegistry)); - assertEq(address(nft.abVerifier()), address(abVerifier)); - assertEq(nft.publisher(), publisher); - } - - function test_initialize_alreadyInitialized() public { - vm.expectRevert("ERC721A__Initializable: contract is already initialized"); - nft.initialize(address(this), address(abDataRegistry), address(abVerifier), address(abKYCModule), NAME); - } - - function test_initDrop_owner() public { - vm.prank(publisher); - - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - uint256 priceCurrency = nft.priceCurrency(); - assertEq(priceCurrency, PRICE_CURRENCY); - - address mintCurrency = address(nft.mintCurrency()); - assertEq(mintCurrency, address(mockUSDC)); - - uint256 maxSupply = nft.maxSupply(); - assertEq(maxSupply, SUPPLY); - - uint256 dropId = nft.dropId(); - assertEq(dropId, DROP_ID_OFFSET + 1); - - assertEq(nft.balanceOf(genesisRecipient), MINT_GENESIS); - - string memory currentURI = nft.tokenURI(1); - assertEq(keccak256(abi.encodePacked(currentURI)), keccak256(abi.encodePacked(URI, "1"))); - } - - function test_initDrop_noRoyaltyNFT() public { - vm.prank(publisher); - - nft.initDrop(PRICE_CURRENCY, SUPPLY, 0, MINT_GENESIS, genesisRecipient, address(0), address(mockUSDC), URI); - - uint256 priceCurrency = nft.priceCurrency(); - assertEq(priceCurrency, PRICE_CURRENCY); - - address mintCurrency = address(nft.mintCurrency()); - assertEq(mintCurrency, address(mockUSDC)); - - uint256 maxSupply = nft.maxSupply(); - assertEq(maxSupply, SUPPLY); - - uint256 dropId = nft.dropId(); - assertEq(dropId, DROP_ID_OFFSET + 1); - - uint256 sharePerToken = nft.sharePerToken(); - assertEq(sharePerToken, 0); - - assertEq(nft.balanceOf(genesisRecipient), MINT_GENESIS); - - string memory currentURI = nft.tokenURI(1); - assertEq(keccak256(abi.encodePacked(currentURI)), keccak256(abi.encodePacked(URI, "1"))); - } - - function test_initDrop_alreadyInitialized() public { - vm.startPrank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - vm.expectRevert(ABErrors.DROP_ALREADY_INITIALIZED.selector); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - vm.stopPrank(); - } - - function test_initDrop_noGenesisMint() public { - vm.prank(publisher); - nft.initDrop( - PRICE_CURRENCY, SUPPLY, SHARE_PER_TOKEN, 0, genesisRecipient, address(royaltyToken), address(mockUSDC), URI - ); - - uint256 maxSupply = nft.maxSupply(); - assertEq(maxSupply, SUPPLY); - - uint256 priceCurrency = nft.priceCurrency(); - assertEq(priceCurrency, PRICE_CURRENCY); - - address mintCurrency = address(nft.mintCurrency()); - assertEq(mintCurrency, address(mockUSDC)); - - assertEq(nft.balanceOf(genesisRecipient), 0); - } - - function test_initDrop_nonOwner() public { - vm.prank(alice); - vm.expectRevert(); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - } - - function test_initDrop_supplyToGenesisRatio() public { - vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); - vm.prank(publisher); - - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - SUPPLY + 1, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - } - - function test_initDrop_invalidSharePerToken() public { - vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); - vm.prank(publisher); - - nft.initDrop( - PRICE_CURRENCY, SUPPLY, 0, MINT_GENESIS, genesisRecipient, address(royaltyToken), address(mockUSDC), URI - ); - } - - function test_initDrop_invalidRoyaltyCurrency() public { - vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); - vm.prank(publisher); - - nft.initDrop( - PRICE_CURRENCY, SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(0), address(mockUSDC), URI - ); - } - - function test_setBaseURI_owner() public { - vm.startPrank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - string memory currentURI = nft.tokenURI(1); - assertEq(keccak256(abi.encodePacked(currentURI)), keccak256(abi.encodePacked(URI, "1"))); - - string memory newURI = "http://new-uri.ipfs/"; - - nft.setBaseURI(newURI); - currentURI = nft.tokenURI(1); - assertEq(keccak256(abi.encodePacked(currentURI)), keccak256(abi.encodePacked(newURI, "1"))); - - vm.stopPrank(); - } - - function test_setBaseURI_nonOwner() public { - vm.prank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - string memory newURI = "http://new-uri.ipfs/"; - - vm.prank(alice); - - vm.expectRevert(); - nft.setBaseURI(newURI); - } - - function test_setDropPhases_owner_multiplePhases() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](3); - phases[0] = phase0; - phases[1] = phase1; - phases[2] = phase2; - - vm.prank(publisher); - nft.setDropPhases(phases); - - (uint256 _P0_START, uint256 _P0_END, uint256 _P0_PRICE, uint256 _P0_MAX_MINT, bool _P0_PHASE_STATUS) = - nft.phases(0); - (uint256 _P1_START, uint256 _P1_END, uint256 _P1_PRICE, uint256 _P1_MAX_MINT, bool _P1_PHASE_STATUS) = - nft.phases(1); - (uint256 _P2_START, uint256 _P2_END, uint256 _P2_PRICE, uint256 _P2_MAX_MINT, bool _P2_PHASE_STATUS) = - nft.phases(2); - - assertEq(_P0_START, P0_START); - assertEq(_P0_END, P0_END); - assertEq(_P0_PRICE, P0_PRICE); - assertEq(_P0_MAX_MINT, P0_MAX_MINT); - assertEq(_P0_PHASE_STATUS, PRIVATE_PHASE); - - assertEq(_P1_START, P1_START); - assertEq(_P1_END, P1_END); - assertEq(_P1_PRICE, P1_PRICE); - assertEq(_P1_MAX_MINT, P1_MAX_MINT); - assertEq(_P1_PHASE_STATUS, PRIVATE_PHASE); - - assertEq(_P2_START, P2_START); - assertEq(_P2_END, P2_END); - assertEq(_P2_PRICE, P2_PRICE); - assertEq(_P2_MAX_MINT, P2_MAX_MINT); - assertEq(_P2_PHASE_STATUS, PRIVATE_PHASE); - } - - function test_setDropPhases_owner_onePhase() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - - vm.prank(publisher); - nft.setDropPhases(phases); - - (uint256 _P0_START, uint256 _P0_END, uint256 _P0_PRICE, uint256 _P0_MAX_MINT, bool _P0_PHASE_STATUS) = - nft.phases(0); - - assertEq(_P0_START, P0_START); - assertEq(_P0_END, P0_END); - assertEq(_P0_PRICE, P0_PRICE); - assertEq(_P0_MAX_MINT, P0_MAX_MINT); - assertEq(_P0_PHASE_STATUS, PRIVATE_PHASE); - } - - function test_setDropPhases_owner_rewritePhasesManyToOne() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](3); - phases[0] = phase0; - phases[1] = phase1; - phases[2] = phase2; - - vm.prank(publisher); - nft.setDropPhases(phases); - - (uint256 _START, uint256 _END, uint256 _PRICE, uint256 _MAX_MINT, bool _PHASE_STATUS) = nft.phases(0); - - assertEq(_START, P0_START); - assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); - assertEq(_MAX_MINT, P0_MAX_MINT); - assertEq(_PHASE_STATUS, PRIVATE_PHASE); - - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); - - assertEq(_START, P1_START); - assertEq(_END, P1_END); - assertEq(_PRICE, P1_PRICE); - assertEq(_MAX_MINT, P1_MAX_MINT); - assertEq(_PHASE_STATUS, PRIVATE_PHASE); - - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); - - assertEq(_START, P2_START); - assertEq(_END, P2_END); - assertEq(_PRICE, P2_PRICE); - assertEq(_MAX_MINT, P2_MAX_MINT); - assertEq(_PHASE_STATUS, PRIVATE_PHASE); - - phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - - vm.prank(publisher); - nft.setDropPhases(phases); - - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); - - assertEq(_START, P0_START); - assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); - assertEq(_MAX_MINT, P0_MAX_MINT); - assertEq(_PHASE_STATUS, PRIVATE_PHASE); - - vm.expectRevert(); - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); - } - - function test_setDropPhases_owner_rewritePhasesOneToMany() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - - vm.prank(publisher); - nft.setDropPhases(phases); - - (uint256 _START, uint256 _END, uint256 _PRICE, uint256 _MAX_MINT, bool _PHASE_STATUS) = nft.phases(0); - - assertEq(_START, P0_START); - assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); - assertEq(_MAX_MINT, P0_MAX_MINT); - assertEq(_PHASE_STATUS, PRIVATE_PHASE); - - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase2 = ABDataTypes.Phase(P2_START, P2_END, P2_PRICE, P2_MAX_MINT, PRIVATE_PHASE); - phases = new ABDataTypes.Phase[](3); - phases[0] = phase0; - phases[1] = phase1; - phases[2] = phase2; - - vm.prank(publisher); - nft.setDropPhases(phases); - - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(0); - - assertEq(_START, P0_START); - assertEq(_END, P0_END); - assertEq(_PRICE, P0_PRICE); - assertEq(_MAX_MINT, P0_MAX_MINT); - assertEq(_PHASE_STATUS, PRIVATE_PHASE); - - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(1); - - assertEq(_START, P1_START); - assertEq(_END, P1_END); - assertEq(_PRICE, P1_PRICE); - assertEq(_MAX_MINT, P1_MAX_MINT); - assertEq(_PHASE_STATUS, PRIVATE_PHASE); - - (_START, _END, _PRICE, _MAX_MINT, _PHASE_STATUS) = nft.phases(2); - - assertEq(_START, P2_START); - assertEq(_END, P2_END); - assertEq(_PRICE, P2_PRICE); - assertEq(_MAX_MINT, P2_MAX_MINT); - assertEq(_PHASE_STATUS, PRIVATE_PHASE); - } - - function test_setDropPhases_incorrectPhaseOrder() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase memory phase1 = ABDataTypes.Phase(P1_START, P1_END, P1_PRICE, P1_MAX_MINT, PRIVATE_PHASE); - - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](2); - phases[0] = phase1; - phases[1] = phase0; - - vm.prank(publisher); - vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); - nft.setDropPhases(phases); - } - - function test_setDropPhases_nonOwner() public { - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, P0_PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - - vm.prank(bob); - - vm.expectRevert(); - nft.setDropPhases(phases); - } - - function test_mint() public { - vm.startPrank(publisher); - - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - // Set block.timestamp to be after the start of Phase 0 - vm.warp(P0_START + 1); - - // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - nft.setDropPhases(phases); - vm.stopPrank(); - - // Create signature for `alice` dropId 0 and phaseId 0 - bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - bytes memory kycSignature = _generateKycSignature(alice, 0); - - // Impersonate `alice` - vm.startPrank(alice); - mockUSDC.approve(address(nft), PRICE_CURRENCY); - nft.mintWithERC20(alice, PHASE_ID_0, 1, signature, kycSignature); - vm.stopPrank(); - - assertEq(nft.balanceOf(alice), 1); - } - - function test_mint_dropSoldOut() public { - vm.startPrank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - // Set block.timestamp to be after the start of Phase 0 - vm.warp(P0_START + 1); - - // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 4, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - nft.setDropPhases(phases); - vm.stopPrank(); - - uint256 mintQty = 4; - - // Create signature for `alice` dropId 0 and phaseId 0 - bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - bytes memory kycSignature = _generateKycSignature(alice, 0); - - vm.startPrank(alice); - mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); - nft.mintWithERC20(alice, PHASE_ID_0, mintQty, signature, kycSignature); - vm.stopPrank(); - - signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); - kycSignature = _generateKycSignature(bob, 0); - - vm.startPrank(bob); - mockUSDC.approve(address(nft), PRICE_CURRENCY); - vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - nft.mintWithERC20(bob, PHASE_ID_0, 1, signature, kycSignature); - vm.stopPrank(); - } - - function test_mint_notEnoughTokenAvailable() public { - vm.startPrank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - // Set block.timestamp to be after the start of Phase 0 - vm.warp(P0_START + 1); - - // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - nft.setDropPhases(phases); - vm.stopPrank(); - - uint256 aliceMintQty = 3; - - // Create signature for `alice` dropId 0 and phaseId 0 - bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - bytes memory kycSignature = _generateKycSignature(alice, 0); - - vm.startPrank(alice); - mockUSDC.approve(address(nft), PRICE_CURRENCY * aliceMintQty); - nft.mintWithERC20(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); - vm.stopPrank(); - - uint256 bobMintQty = 2; - signature = _generateBackendSignature(bob, address(nft), PHASE_ID_0); - kycSignature = _generateKycSignature(bob, 0); - - vm.startPrank(bob); - mockUSDC.approve(address(nft), PRICE_CURRENCY * bobMintQty); - vm.expectRevert(ABErrors.NOT_ENOUGH_TOKEN_AVAILABLE.selector); - nft.mintWithERC20(bob, PHASE_ID_0, bobMintQty, signature, kycSignature); - vm.stopPrank(); - } - - function test_mint_noPhaseSet() public { - vm.prank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - uint256 aliceMintQty = 3; - - // Create signature for `bob` dropId 0 and phaseId 0 - bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - bytes memory kycSignature = _generateKycSignature(alice, 0); - - vm.startPrank(alice); - mockUSDC.approve(address(nft), PRICE_CURRENCY * aliceMintQty); - vm.expectRevert(); - nft.mintWithERC20(alice, PHASE_ID_0, aliceMintQty, signature, kycSignature); - vm.stopPrank(); - } - - // function test_mint_incorrectETHSent() public { - // vm.startPrank(publisher); - // nft.initDrop( - // PRICE_CURRENCY, - // SUPPLY, - // SHARE_PER_TOKEN, - // MINT_GENESIS, - // genesisRecipient, - // address(royaltyToken), - // address(mockUSDC), - // URI - // ); - - // // Set block.timestamp to be after the start of Phase 0 - // vm.warp(P0_START + 1); - - // // Set the phases - // ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); - // ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - // phases[0] = phase0; - // nft.setDropPhases(phases); - - // vm.stopPrank(); - - // // Create signature for `alice` dropId 0 and phaseId 0 - // bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - // bytes memory kycSignature = _generateKycSignature(alice, 0); - - // // Impersonate `alice` - // vm.startPrank(alice); - - // uint256 mintQty = 4; - - // uint256 tooHighPrice = PRICE * (mintQty + 1); - // uint256 tooLowPrice = PRICE * (mintQty - 1); - - // vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); - // nft.mint{value: tooHighPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); - - // vm.expectRevert(ABErrors.INCORRECT_ETH_SENT.selector); - // nft.mint{value: tooLowPrice}(alice, PHASE_ID_0, mintQty, signature, kycSignature); - - // vm.stopPrank(); - // } - - function test_mint_maxMintPerAddress() public { - vm.startPrank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - // Set block.timestamp to be after the start of Phase 0 - vm.warp(P0_START + 1); - - // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - nft.setDropPhases(phases); - - vm.stopPrank(); - - // Create signature for `alice` dropId 0 and phaseId 0 - bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - bytes memory kycSignature = _generateKycSignature(alice, 0); - - // Impersonate `alice` - vm.startPrank(alice); - - uint256 mintQty = P0_MAX_MINT + 1; - mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); - - vm.expectRevert(ABErrors.MAX_MINT_PER_ADDRESS.selector); - nft.mintWithERC20(alice, PHASE_ID_0, mintQty, signature, kycSignature); - - vm.stopPrank(); - } - - function test_mint_phaseNotActive() public { - vm.startPrank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - // Set block.timestamp to be before the start of Phase 0 - vm.warp(P0_START - 1); - - // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - nft.setDropPhases(phases); - - vm.stopPrank(); - - // Create signature for `alice` dropId 0 and phaseId 0 - bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - bytes memory kycSignature = _generateKycSignature(alice, 0); - - // Impersonate `alice` - vm.startPrank(alice); - - uint256 mintQty = 4; - - mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); - vm.expectRevert(ABErrors.PHASE_NOT_ACTIVE.selector); - nft.mintWithERC20(alice, PHASE_ID_0, mintQty, signature, kycSignature); - - vm.stopPrank(); - } - - function test_mint_notEligible() public { - vm.startPrank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - // Set block.timestamp to be after the start of Phase 0 - vm.warp(P0_START + 1); - - // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - nft.setDropPhases(phases); - - vm.stopPrank(); - - // Impersonate `alice` - vm.startPrank(alice); - - uint256 mintQty = 4; - - bytes memory invalidSignature = _generateInvalidSignature(alice, address(nft), PHASE_ID_0); - bytes memory kycSignature = _generateKycSignature(alice, 0); - - mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); - - vm.expectRevert(ABErrors.NOT_ELIGIBLE.selector); - nft.mintWithERC20(alice, PHASE_ID_0, mintQty, invalidSignature, kycSignature); - - vm.stopPrank(); - } - - function test_mint_public() public { - vm.startPrank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - // Set block.timestamp to be after the start of Phase 0 - vm.warp(P0_START + 1); - - // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, 10, PUBLIC_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - nft.setDropPhases(phases); - - vm.stopPrank(); - - bytes memory kycSignature = _generateKycSignature(alice, 0); - - // Impersonate `alice` - vm.startPrank(alice); - - uint256 mintQty = 4; - mockUSDC.approve(address(nft), PRICE_CURRENCY * mintQty); - nft.mintWithERC20(alice, PHASE_ID_0, mintQty, "", kycSignature); - - assertEq(nft.balanceOf(alice), mintQty); - - vm.stopPrank(); - } - - function test_mintCoinWithPermit() public { - vm.startPrank(publisher); - - nft.initDrop( - PRICE_USDC, SUPPLY, SHARE_PER_TOKEN, MINT_GENESIS, genesisRecipient, address(royaltyToken), BASE_USDC, URI - ); - - // Set block.timestamp to be after the start of Phase 0 - vm.warp(P0_START + 1); - - // Set the phases - ABDataTypes.Phase memory phase0 = ABDataTypes.Phase(P0_START, P0_END, PRICE, P0_MAX_MINT, PRIVATE_PHASE); - ABDataTypes.Phase[] memory phases = new ABDataTypes.Phase[](1); - phases[0] = phase0; - nft.setDropPhases(phases); - vm.stopPrank(); - - // Create signature for `alice` dropId 0 and phaseId 0 - bytes memory signature = _generateBackendSignature(alice, address(nft), PHASE_ID_0); - bytes memory kycSignature = _generateKycSignature(alice, 0); - - bytes32 hashStruct = keccak256(abi.encode(PERMIT_TYPEHASH, alice, address(nft), PRICE_USDC, 0, 1e18 days)); - bytes32 digest = keccak256(abi.encodePacked("\x19\x01", DOMAIN_SEPARATOR, hashStruct)); - - (uint8 v, bytes32 r, bytes32 s) = vm.sign(alicePkey, digest); - - // Impersonate `alice` - vm.prank(alice); - nft.mintWithERC20Permit(alice, PHASE_ID_0, 1, 1e18 days, v, r, s, signature, kycSignature); - - assertEq(nft.balanceOf(alice), 1); - } - - function test_setSharePerToken_admin(uint256 _newShare) public { - vm.assume(_newShare != SHARE_PER_TOKEN); - vm.assume(_newShare < 1_000_000); - - vm.startPrank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - assertEq(nft.sharePerToken(), SHARE_PER_TOKEN); - - nft.setSharePerToken(_newShare); - - assertEq(nft.sharePerToken(), _newShare); - vm.stopPrank(); - } - - function test_setSharePerToken_nonAdmin(address _nonAdmin, uint256 _newShare) public { - vm.assume(_newShare != SHARE_PER_TOKEN); - vm.assume(_newShare < 1_000_000); - vm.assume(_nonAdmin != address(this)); - vm.assume(_nonAdmin != publisher); - - vm.prank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - assertEq(nft.sharePerToken(), SHARE_PER_TOKEN); - - vm.prank(_nonAdmin); - vm.expectRevert(); - nft.setSharePerToken(_newShare); - } - - function test_withdrawERC20_admin() public { - vm.prank(alice); - mockUSDC.transfer(address(nft), 10e18); - - assertEq(mockUSDC.balanceOf(publisher), 0); - assertEq(mockUSDC.balanceOf(address(nft)), 10e18); - - vm.prank(publisher); - nft.withdrawERC20(address(mockUSDC), 10e18); - - assertEq(mockUSDC.balanceOf(publisher), 10e18); - assertEq(mockUSDC.balanceOf(address(nft)), 0); - } - - function test_withdrawERC20_nonAdmin(address _nonAdmin) public { - vm.assume(_nonAdmin != address(this)); - vm.assume(_nonAdmin != publisher); - - vm.prank(alice); - mockUSDC.transfer(address(nft), 10e18); - - vm.prank(_nonAdmin); - vm.expectRevert(); - nft.withdrawERC20(address(mockUSDC), 10e18); - } - - function test_withdrawToRightholder(uint256 _amount) public { - vm.assume(_amount > 10); - vm.assume(_amount < 1e30); - vm.deal(address(nft), _amount); - - vm.prank(publisher); - nft.withdrawToRightholder(); - - uint256 expectedPublisherBalance = _amount * PUBLISHER_FEE / 10_000; - uint256 expectedTreasuryBalance = _amount - expectedPublisherBalance; - - assertEq(treasury.balance, expectedTreasuryBalance); - assertEq(publisher.balance, expectedPublisherBalance); - } - - function test_withdrawToRightholder_allToPublisher(uint256 _amount) public { - vm.assume(_amount > 10); - vm.assume(_amount < 1e30); - vm.deal(address(nft), _amount); - - abDataRegistry.setPublisherFee(publisher, 10_000); - - vm.prank(publisher); - nft.withdrawToRightholder(); - - uint256 expectedPublisherBalance = _amount; - uint256 expectedTreasuryBalance = 0; - - assertEq(treasury.balance, expectedTreasuryBalance); - assertEq(publisher.balance, expectedPublisherBalance); - } - - function test_withdrawToRightholder_allToTreasury(uint256 _amount) public { - vm.assume(_amount > 10); - vm.assume(_amount < 1e30); - vm.deal(address(nft), _amount); - - abDataRegistry.setPublisherFee(publisher, 0); - - vm.prank(publisher); - nft.withdrawToRightholder(); - - uint256 expectedPublisherBalance = 0; - uint256 expectedTreasuryBalance = _amount; - - assertEq(treasury.balance, expectedTreasuryBalance); - assertEq(publisher.balance, expectedPublisherBalance); - } - - function test_withdrawToRightholder_dropSpecific_allToPublisher(uint256 _amount) public { - vm.assume(_amount > 10); - vm.assume(_amount < 1e30); - vm.deal(address(nft), _amount); - - vm.prank(publisher); - - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - abDataRegistry.setDropFee(true, nft.dropId(), 10_000); - - vm.prank(publisher); - nft.withdrawToRightholder(); - - uint256 expectedPublisherBalance = _amount; - uint256 expectedTreasuryBalance = 0; - - assertEq(treasury.balance, expectedTreasuryBalance); - assertEq(publisher.balance, expectedPublisherBalance); - } - - function test_withdrawToRightholder_dropSpecific_allToTreasury(uint256 _amount) public { - vm.assume(_amount > 10); - vm.assume(_amount < 1e30); - vm.deal(address(nft), _amount); - - vm.prank(publisher); - - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - abDataRegistry.setDropFee(true, nft.dropId(), 0); - - vm.prank(publisher); - nft.withdrawToRightholder(); - - uint256 expectedPublisherBalance = 0; - uint256 expectedTreasuryBalance = _amount; - - assertEq(treasury.balance, expectedTreasuryBalance); - assertEq(publisher.balance, expectedPublisherBalance); - } - - function test_withdrawToRightholder_invalidParameter(uint256 _amount) public { - vm.assume(_amount > 10); - vm.assume(_amount < 1e30); - vm.deal(address(nft), _amount); - - abDataRegistry.setTreasury(address(0)); - - vm.prank(publisher); - vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); - nft.withdrawToRightholder(); - } - - function test_withdrawToRightholder_nonAdmin(address _sender, uint256 _amount) public { - vm.assume(_amount > 10); - vm.assume(_amount < 1e30); - vm.assume(nft.owner() != _sender); - - vm.deal(address(nft), _amount); - - vm.prank(_sender); - vm.expectRevert(); - nft.withdrawToRightholder(); - } - - function test_setMaxSupply() public { - vm.startPrank(publisher); - - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - URI - ); - - assertEq(nft.maxSupply(), SUPPLY); - nft.setMaxSupply(SUPPLY + 1); - - assertEq(nft.maxSupply(), SUPPLY + 1); - } - - function test_setMaxSupply_alreadyMinted() public { - vm.startPrank(publisher); - - nft.initDrop( - PRICE_CURRENCY, SUPPLY, SHARE_PER_TOKEN, 2, genesisRecipient, address(royaltyToken), address(mockUSDC), URI - ); - - vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); - nft.setMaxSupply(1); - - vm.stopPrank(); - } - - function test_symbol_initialized() public { - vm.startPrank(publisher); - nft.initDrop( - PRICE_CURRENCY, SUPPLY, SHARE_PER_TOKEN, 2, genesisRecipient, address(royaltyToken), address(mockUSDC), URI - ); - - string memory symbol = nft.symbol(); - - assertEq(keccak256(abi.encodePacked(symbol)) == keccak256(abi.encodePacked("AB10001")), true); - } - - function test_symbol_notInitialized() public { - string memory symbol = nft.symbol(); - - assertEq(keccak256(abi.encodePacked(symbol)) == keccak256(abi.encodePacked("")), true); - } - - function test_tokenURI_nonUnique() public { - string memory tokenURI = "metadata.io/"; - - vm.prank(publisher); - - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - tokenURI - ); - - string memory returnedTokenURI = nft.tokenURI(1); - assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("metadata.io/1")), true); - } - - function test_tokenURI_unique() public { - string memory tokenURI = "metadata.io"; - - vm.prank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - tokenURI - ); - - string memory returnedTokenURI = nft.tokenURI(1); - assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("metadata.io")), true); - } - - function test_tokenURI_empty() public { - string memory tokenURI = ""; - - vm.prank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - MINT_GENESIS, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - tokenURI - ); - - string memory returnedTokenURI = nft.tokenURI(1); - assertEq(keccak256(abi.encodePacked(returnedTokenURI)) == keccak256(abi.encodePacked("")), true); - } - - function test_tokenURI_unminted() public { - string memory tokenURI = "metadata.io/"; - - vm.prank(publisher); - nft.initDrop( - PRICE_CURRENCY, - SUPPLY, - SHARE_PER_TOKEN, - 0, - genesisRecipient, - address(royaltyToken), - address(mockUSDC), - tokenURI - ); - - vm.expectRevert(ABErrors.INVALID_PARAMETER.selector); - nft.tokenURI(1); - } - - /* ******************************************************************************************/ - /* UTILITY FUNCTIONS */ - /* ******************************************************************************************/ - - function _generateBackendSignature(address _signFor, address _collection, uint256 _phaseId) - internal - view - returns (bytes memory signature) - { - // Create signature for user `signFor` for drop ID `_dropId` and phase ID `_phaseId` - bytes32 msgHash = keccak256(abi.encodePacked(_signFor, _collection, _phaseId)).toEthSignedMessageHash(); - (uint8 v, bytes32 r, bytes32 s) = vm.sign(abSignerPkey, msgHash); - signature = abi.encodePacked(r, s, v); - } - - function _generateKycSignature(address _signFor, uint256 _nonce) internal view returns (bytes memory signature) { - // Create signature for user `signFor` for drop ID `_dropId` and phase ID `_phaseId` - bytes32 msgHash = keccak256(abi.encodePacked(_signFor, _nonce)).toEthSignedMessageHash(); - (uint8 v, bytes32 r, bytes32 s) = vm.sign(kycSignerPkey, msgHash); - signature = abi.encodePacked(r, s, v); - } - - function _generateInvalidSignature(address _signFor, address _collection, uint256 _phaseId) - internal - pure - returns (bytes memory signature) - { - // Create signature for user `signFor` for drop ID `_dropId` and phase ID `_phaseId` - bytes32 msgHash = keccak256(abi.encodePacked(_signFor, _collection, _phaseId)).toEthSignedMessageHash(); - (uint8 v, bytes32 r, bytes32 s) = vm.sign(1000, msgHash); - signature = abi.encodePacked(r, s, v); - } -} From 1954de30586dc306570c674684ffa1221f5dad18 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Wed, 6 Dec 2023 10:22:57 +0100 Subject: [PATCH 57/74] cache --- forge-cache/solidity-files-cache.json | 41 --------------------------- 1 file changed, 41 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 04cbf02..493b492 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -8010,47 +8010,6 @@ } } }, - "test/_testdata/ERC721ABLECoin.td.sol": { - "lastModificationDate": 1701337297497, - "contentHash": "f0d8dd13be3eb7c8e35aa6feaaa48280", - "sourceName": "test/_testdata/ERC721ABLECoin.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABCoinTestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLECoin.td.sol/ERC721ABCoinTestData.json" - } - } - }, "test/_testdata/ERC721ABOE.td.sol": { "lastModificationDate": 1701772177095, "contentHash": "b7f1965d2b763481b6ec39413d9c79f9", From f4791cca38c76c4578fdb9a3cd3fe56923f20bcd Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Thu, 7 Dec 2023 11:13:23 +0100 Subject: [PATCH 58/74] updated factory contract --- src/factory/AnotherCloneFactory.sol | 48 ++++++++++++++++++++++++++--- 1 file changed, 43 insertions(+), 5 deletions(-) diff --git a/src/factory/AnotherCloneFactory.sol b/src/factory/AnotherCloneFactory.sol index c2ed089..00addcc 100644 --- a/src/factory/AnotherCloneFactory.sol +++ b/src/factory/AnotherCloneFactory.sol @@ -87,8 +87,11 @@ contract AnotherCloneFactory is AccessControlUpgradeable { /// @dev anotherblock KYC Module contract address address public abKycModule; + /// @dev array containing the different approved NFT implementation addresses + address[] public erc721ImplAddresses; + /// @dev Storage gap used for future upgrades (30 * 32 bytes) - uint256[29] __gap; + uint256[28] __gap; // ______ __ __ // / ____/___ ____ _____/ /________ _______/ /_____ _____ @@ -146,12 +149,16 @@ contract AnotherCloneFactory is AccessControlUpgradeable { * Create new ERC721 collection * Only the caller with role `PUBLISHER_ROLE` can perform this operation * + * @param _implementationId NFT implementation identifier * @param _name collection name * @param _salt bytes used for deterministic deployment */ - function createCollection721(string memory _name, bytes32 _salt) external onlyRole(PUBLISHER_ROLE) { + function createCollection721(uint256 _implementationId, string memory _name, bytes32 _salt) + external + onlyRole(PUBLISHER_ROLE) + { // Create new NFT contract - ERC721AB newCollection = ERC721AB(Clones.cloneDeterministic(erc721Impl, _salt)); + ERC721AB newCollection = ERC721AB(Clones.cloneDeterministic(erc721ImplAddresses[_implementationId], _salt)); // Initialize NFT contract newCollection.initialize(msg.sender, address(abDataRegistry), abVerifier, abKycModule, _name); @@ -290,6 +297,32 @@ contract AnotherCloneFactory is AccessControlUpgradeable { erc721Impl = _newImpl; } + /** + * @notice + * Approve a new ERC721 implementation type address + * Only the caller with role `DEFAULT_ADMIN_ROLE` can perform this operation + * + * @param _newImpl address of the new implementation contract + */ + function approveERC721Implementation(address _newImpl) external onlyRole(DEFAULT_ADMIN_ROLE) { + erc721ImplAddresses[erc721ImplAddresses.length] = _newImpl; + } + + /** + * @notice + * Update an ERC721 implementation type address + * Only the caller with role `DEFAULT_ADMIN_ROLE` can perform this operation + * + * @param _implementationId implementation identifier to be updated + * @param _newImpl address of the new implementation contract + */ + function updateERC721Implementation(uint256 _implementationId, address _newImpl) + external + onlyRole(DEFAULT_ADMIN_ROLE) + { + erc721ImplAddresses[_implementationId] = _newImpl; + } + /** * @notice * Set ERC1155AB implementation address @@ -333,12 +366,17 @@ contract AnotherCloneFactory is AccessControlUpgradeable { * @notice * Predict the new ERC721AB collection address * + * @param _implementationId implementation identifier * @param _salt address of the new implementation contract * * @return _predicted predicted address for the given `_salt` */ - function predictERC721Address(bytes32 _salt) external view returns (address _predicted) { - _predicted = Clones.predictDeterministicAddress(erc721Impl, _salt, address(this)); + function predictERC721Address(uint256 _implementationId, bytes32 _salt) + external + view + returns (address _predicted) + { + _predicted = Clones.predictDeterministicAddress(erc721ImplAddresses[_implementationId], _salt, address(this)); } /** From 66a9a58176684bef01331a4bccf0631630c9b757 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Thu, 7 Dec 2023 11:16:29 +0100 Subject: [PATCH 59/74] add return to `approveERC721Implementation` --- src/factory/AnotherCloneFactory.sol | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/factory/AnotherCloneFactory.sol b/src/factory/AnotherCloneFactory.sol index 00addcc..475540c 100644 --- a/src/factory/AnotherCloneFactory.sol +++ b/src/factory/AnotherCloneFactory.sol @@ -303,9 +303,16 @@ contract AnotherCloneFactory is AccessControlUpgradeable { * Only the caller with role `DEFAULT_ADMIN_ROLE` can perform this operation * * @param _newImpl address of the new implementation contract + * + * @return _newImplementationId the new implementation identifier */ - function approveERC721Implementation(address _newImpl) external onlyRole(DEFAULT_ADMIN_ROLE) { - erc721ImplAddresses[erc721ImplAddresses.length] = _newImpl; + function approveERC721Implementation(address _newImpl) + external + onlyRole(DEFAULT_ADMIN_ROLE) + returns (uint256 _newImplementationId) + { + _newImplementationId = erc721ImplAddresses.length; + erc721ImplAddresses[_newImplementationId] = _newImpl; } /** From 79b58bb39e652a0cdbace2eef70701d7b68f3c18 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Mon, 11 Dec 2023 10:50:47 +0100 Subject: [PATCH 60/74] bug fix --- src/factory/AnotherCloneFactory.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/factory/AnotherCloneFactory.sol b/src/factory/AnotherCloneFactory.sol index 475540c..3336c70 100644 --- a/src/factory/AnotherCloneFactory.sol +++ b/src/factory/AnotherCloneFactory.sol @@ -312,7 +312,7 @@ contract AnotherCloneFactory is AccessControlUpgradeable { returns (uint256 _newImplementationId) { _newImplementationId = erc721ImplAddresses.length; - erc721ImplAddresses[_newImplementationId] = _newImpl; + erc721ImplAddresses.push(_newImpl); } /** From 7dfb31dcb90ec88944cea009e08e7f904d5d488e Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Mon, 11 Dec 2023 10:50:55 +0100 Subject: [PATCH 61/74] updated test campaign --- forge-cache/solidity-files-cache.json | 8962 +----------------------- test/factory/AnotherCloneFactory.t.sol | 102 +- test/token/ERC721/ERC721ABLE.t.sol | 13 +- test/token/ERC721/ERC721ABOE.t.sol | 14 +- 4 files changed, 88 insertions(+), 9003 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 493b492..a1a9f8f 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -1,8961 +1 @@ -{ - "_format": "ethers-rs-sol-cache-3", - "paths": { - "artifacts": "out", - "build_infos": "out/build-info", - "sources": "src", - "tests": "test", - "scripts": "script", - "libraries": [ - "lib" - ] - }, - "files": { - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol": { - "lastModificationDate": 1685365984533, - "contentHash": "2bebb9fb7b7e001916c833eb49ff74d3", - "sourceName": "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC721AStorage": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721AStorage.sol/ERC721AStorage.json" - } - } - }, - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol": { - "lastModificationDate": 1685365984533, - "contentHash": "f8ce3ae749d925b4eee03832f3ce8ed7", - "sourceName": "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol" - ], - "versionRequirement": "^0.8.4", - "artifacts": { - "ERC721AUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721AUpgradeable.sol/ERC721AUpgradeable.json" - }, - "ERC721A__IERC721ReceiverUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json" - } - } - }, - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol": { - "lastModificationDate": 1685365984533, - "contentHash": "0fa43fa21f853e3f8f65edb747c92c4e", - "sourceName": "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC721A__Initializable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721A__Initializable.sol/ERC721A__Initializable.json" - } - } - }, - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol": { - "lastModificationDate": 1685365984533, - "contentHash": "5fabc57a19d6e51af472028bb7022279", - "sourceName": "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC721A__InitializableStorage": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json" - } - } - }, - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol": { - "lastModificationDate": 1685365984533, - "contentHash": "f047c91056b779f8c57cd0f6addfc6d2", - "sourceName": "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.4", - "artifacts": { - "IERC721AUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC721AUpgradeable.sol/IERC721AUpgradeable.json" - } - } - }, - "lib/forge-std/lib/ds-test/src/test.sol": { - "lastModificationDate": 1685365985360, - "contentHash": "abdafe4b187f548ef0145173f5b93247", - "sourceName": "lib/forge-std/lib/ds-test/src/test.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.5.0", - "artifacts": { - "DSTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "test.sol/DSTest.json" - } - } - }, - "lib/forge-std/src/Base.sol": { - "lastModificationDate": 1685365984591, - "contentHash": "8f04bbbb2c16f79e14fdc321695a8ec2", - "sourceName": "lib/forge-std/src/Base.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "CommonBase": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Base.sol/CommonBase.json" - }, - "ScriptBase": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Base.sol/ScriptBase.json" - }, - "TestBase": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Base.sol/TestBase.json" - } - } - }, - "lib/forge-std/src/Script.sol": { - "lastModificationDate": 1685365984591, - "contentHash": "83c39354c1e43190bce4dc43860dc786", - "sourceName": "lib/forge-std/src/Script.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "Script": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Script.sol/Script.json" - } - } - }, - "lib/forge-std/src/StdAssertions.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "9de0f799a1b1664749ddd6ce6492eae1", - "sourceName": "lib/forge-std/src/StdAssertions.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/StdMath.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "StdAssertions": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdAssertions.sol/StdAssertions.json" - } - } - }, - "lib/forge-std/src/StdChains.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "f73fef006f384b898c755b0e404b84a2", - "sourceName": "lib/forge-std/src/StdChains.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "StdChains": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdChains.sol/StdChains.json" - } - } - }, - "lib/forge-std/src/StdCheats.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "77e0d7b6fd1fb0b20dc96c166f2d8e8c", - "sourceName": "lib/forge-std/src/StdCheats.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "StdCheats": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdCheats.sol/StdCheats.json" - }, - "StdCheatsSafe": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdCheats.sol/StdCheatsSafe.json" - } - } - }, - "lib/forge-std/src/StdError.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "64c896e1276a291776e5ea5aecb3870a", - "sourceName": "lib/forge-std/src/StdError.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "stdError": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdError.sol/stdError.json" - } - } - }, - "lib/forge-std/src/StdInvariant.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "12c06010ec43ce935ed209d5aca30828", - "sourceName": "lib/forge-std/src/StdInvariant.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "StdInvariant": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdInvariant.sol/StdInvariant.json" - } - } - }, - "lib/forge-std/src/StdJson.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "2e1d13674e152408867795362d833c24", - "sourceName": "lib/forge-std/src/StdJson.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.6.0, <0.9.0", - "artifacts": { - "stdJson": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdJson.sol/stdJson.json" - } - } - }, - "lib/forge-std/src/StdMath.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "9da8f453eba6bb98f3d75bc6822bfb29", - "sourceName": "lib/forge-std/src/StdMath.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "stdMath": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdMath.sol/stdMath.json" - } - } - }, - "lib/forge-std/src/StdStorage.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "3cb9868082df39a53927db09dbc21f23", - "sourceName": "lib/forge-std/src/StdStorage.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "stdStorage": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdStorage.sol/stdStorage.json" - }, - "stdStorageSafe": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdStorage.sol/stdStorageSafe.json" - } - } - }, - "lib/forge-std/src/StdStyle.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "820e6f6b7704f0c980fae604b1e34b18", - "sourceName": "lib/forge-std/src/StdStyle.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.4.22, <0.9.0", - "artifacts": { - "StdStyle": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdStyle.sol/StdStyle.json" - } - } - }, - "lib/forge-std/src/StdUtils.sol": { - "lastModificationDate": 1685365984593, - "contentHash": "45fc08daaa17b7908fa5de7d758d8c86", - "sourceName": "lib/forge-std/src/StdUtils.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "StdUtils": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdUtils.sol/StdUtils.json" - } - } - }, - "lib/forge-std/src/Test.sol": { - "lastModificationDate": 1685365984593, - "contentHash": "bc9d74a0c612e1c2b66cca2973bcc803", - "sourceName": "lib/forge-std/src/Test.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "Test": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Test.sol/Test.json" - } - } - }, - "lib/forge-std/src/Vm.sol": { - "lastModificationDate": 1685365984593, - "contentHash": "f4eae1ed3732746674ff1a4c48c0be05", - "sourceName": "lib/forge-std/src/Vm.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "Vm": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Vm.sol/Vm.json" - }, - "VmSafe": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Vm.sol/VmSafe.json" - } - } - }, - "lib/forge-std/src/console.sol": { - "lastModificationDate": 1685365984593, - "contentHash": "100b8a33b917da1147740d7ab8b0ded3", - "sourceName": "lib/forge-std/src/console.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.4.22, <0.9.0", - "artifacts": { - "console": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "console.sol/console.json" - } - } - }, - "lib/forge-std/src/console2.sol": { - "lastModificationDate": 1685365984593, - "contentHash": "2096b4e5f252c5df9909cccbe3d2da2e", - "sourceName": "lib/forge-std/src/console2.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.4.22, <0.9.0", - "artifacts": { - "console2": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "console2.sol/console2.json" - } - } - }, - "lib/forge-std/src/interfaces/IMulticall3.sol": { - "lastModificationDate": 1685365984594, - "contentHash": "7b131ca1ca32ef6378b7b9ad5488b901", - "sourceName": "lib/forge-std/src/interfaces/IMulticall3.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "IMulticall3": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IMulticall3.sol/IMulticall3.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/access/Ownable.sol": { - "lastModificationDate": 1685365985432, - "contentHash": "e436cea06129be2c73cda4b1acc848b5", - "sourceName": "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/Context.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "Ownable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Ownable.sol/Ownable.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol": { - "lastModificationDate": 1685365985437, - "contentHash": "2858d98e74e67987ec81b39605230b74", - "sourceName": "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1822Proxiable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "draft-IERC1822.sol/IERC1822Proxiable.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol": { - "lastModificationDate": 1685365985446, - "contentHash": "11535a839f5494023c396098504f5646", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "Clones": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Clones.sol/Clones.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol": { - "lastModificationDate": 1685365985446, - "contentHash": "3fc3c7c0a2956f36e766691bb9473b06", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC1967Proxy": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1967Proxy.sol/ERC1967Proxy.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol": { - "lastModificationDate": 1685365985447, - "contentHash": "6baa887a798e95b14f34e093f117e9b2", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol" - ], - "versionRequirement": "^0.8.2", - "artifacts": { - "ERC1967Upgrade": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1967Upgrade.sol/ERC1967Upgrade.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol": { - "lastModificationDate": 1685365985447, - "contentHash": "40b3d81a836d50ff47e03893dcaaf204", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "Proxy": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Proxy.sol/Proxy.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol": { - "lastModificationDate": 1685365985447, - "contentHash": "b6bd23bf19e90b771337037706470933", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IBeacon": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IBeacon.sol/IBeacon.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol": { - "lastModificationDate": 1685365985447, - "contentHash": "a947492251ac15d6bfd899c9fdb4d82b", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ProxyAdmin": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ProxyAdmin.sol/ProxyAdmin.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol": { - "lastModificationDate": 1685365985447, - "contentHash": "ea48b4a63fd733eec048191be006daa8", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "TransparentUpgradeableProxy": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol": { - "lastModificationDate": 1685365985448, - "contentHash": "19c4fbc3e825d25231b09f13aff9a2b2", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/Address.sol" - ], - "versionRequirement": "^0.8.2", - "artifacts": { - "Initializable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "proxy/utils/Initializable.sol/Initializable.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol": { - "lastModificationDate": 1685365985448, - "contentHash": "447816f3d93d639006eb423c33d2ca2c", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC1155": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155.sol/ERC1155.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol": { - "lastModificationDate": 1685365985449, - "contentHash": "d5a8f6e07ca38ec384856cfe9f08a867", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155.sol/IERC1155.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol": { - "lastModificationDate": 1685365985449, - "contentHash": "9f8822b72fe2702979e40160cb6d9636", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155Receiver": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155Receiver.sol/IERC1155Receiver.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol": { - "lastModificationDate": 1685365985450, - "contentHash": "9148c2e10c4efb12c71a7f080da5559b", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155MetadataURI": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155MetadataURI.sol/IERC1155MetadataURI.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol": { - "lastModificationDate": 1685365985451, - "contentHash": "88079762e28b246888129028f757e047", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC1155Holder": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155Holder.sol/ERC1155Holder.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol": { - "lastModificationDate": 1685365985451, - "contentHash": "55b180cf664783e9a2baac20e82683fb", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC1155Receiver": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155Receiver.sol/ERC1155Receiver.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol": { - "lastModificationDate": 1685365985451, - "contentHash": "834a0dde221759af42b030253315b086", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC20": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC20.sol/ERC20.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol": { - "lastModificationDate": 1685365985451, - "contentHash": "ad7c2d0af148c8f9f097d65deeb4da6b", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC20": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC20.sol/IERC20.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "909ab67fc5c25033fe6cd364f8c056f9", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC20Metadata": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC20Metadata.sol/IERC20Metadata.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "fb77f144244b9ab12533aa6ce85ef8c5", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC20Permit": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "draft-IERC20Permit.sol/IERC20Permit.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "0320a90f714843ca19373ed143fc4466", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "SafeERC20": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SafeERC20.sol/SafeERC20.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "f7f4f78c31f28534852e5c56000a25af", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol", - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC721": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721.sol/ERC721.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "eb7e61db29f31d88b3c1cef1b063d338", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC721": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC721.sol/IERC721.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "c22d4395e33763de693fd440c6fd10e1", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC721Receiver": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC721Receiver.sol/IERC721Receiver.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol": { - "lastModificationDate": 1685365985453, - "contentHash": "efbc0d15b80a74e34dbe8da0f3e879bb", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC721Metadata": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC721Metadata.sol/IERC721Metadata.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol": { - "lastModificationDate": 1685365985454, - "contentHash": "35b56a00de0fb16f9e6a8d7464d31b0b", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC777": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC777.sol/IERC777.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol": { - "lastModificationDate": 1685365985454, - "contentHash": "268af1696d7a83a7e78a1a8f5ba1c685", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC777Recipient": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC777Recipient.sol/IERC777Recipient.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol": { - "lastModificationDate": 1685365985454, - "contentHash": "7c1ce5bc5bc5f57fe7106ba767063e08", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC777Sender": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC777Sender.sol/IERC777Sender.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/Address.sol": { - "lastModificationDate": 1685365985454, - "contentHash": "f31ad6fc4bbf9c06203987220156a6ba", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.1", - "artifacts": { - "Address": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Address.sol/Address.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/Context.sol": { - "lastModificationDate": 1685365985455, - "contentHash": "5f2c5c4b6af2dd4551027144797bc8be", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "Context": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Context.sol/Context.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol": { - "lastModificationDate": 1685365985455, - "contentHash": "f993f8f50186952a59ee5e3a30b68222", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "StorageSlot": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StorageSlot.sol/StorageSlot.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/Strings.sol": { - "lastModificationDate": 1685365985455, - "contentHash": "396031251978f8febfd90cb62cb240ec", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "Strings": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Strings.sol/Strings.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol": { - "lastModificationDate": 1685365985455, - "contentHash": "fe1190dbb6431c2464246925713f0f7f", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ECDSA": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ECDSA.sol/ECDSA.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol": { - "lastModificationDate": 1685365985456, - "contentHash": "0e7db055ce108f9da7bb6686a00287c0", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC165": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC165.sol/ERC165.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol": { - "lastModificationDate": 1685365985456, - "contentHash": "03e6768535ac4da0e9756f1d8a4a018a", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC165": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC165.sol/IERC165.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol": { - "lastModificationDate": 1685365985457, - "contentHash": "2d32789d582abdcbe87cc5edc2e07374", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1820Registry": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1820Registry.sol/IERC1820Registry.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol": { - "lastModificationDate": 1685365985457, - "contentHash": "b9c58920ce74d6dc819161786112e7ee", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "Math": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Math.sol/Math.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol": { - "lastModificationDate": 1685365985457, - "contentHash": "67cf2dfe1d1c22b4ea7f242e8a17f431", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "SafeCast": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SafeCast.sol/SafeCast.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol": { - "lastModificationDate": 1685365985457, - "contentHash": "2337f0279507b5edf14a07067adf0d05", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "SafeMath": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SafeMath.sol/SafeMath.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol": { - "lastModificationDate": 1685365987260, - "contentHash": "1e9b13e33c8524e33d22f3f1239efe5c", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "AccessControlUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "AccessControlUpgradeable.sol/AccessControlUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol": { - "lastModificationDate": 1685365987260, - "contentHash": "21b43d1337ebc77c11da3cbe3fd65316", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IAccessControlUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol": { - "lastModificationDate": 1685365987260, - "contentHash": "403ce8273abde646bff81558ddf512ad", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "OwnableUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "OwnableUpgradeable.sol/OwnableUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol": { - "lastModificationDate": 1685365987276, - "contentHash": "fc5844e59776a976987884e4d9814c7d", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol" - ], - "versionRequirement": "^0.8.2", - "artifacts": { - "Initializable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "utils/Initializable.sol/Initializable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol": { - "lastModificationDate": 1685365987276, - "contentHash": "2f348910d560ef8dfba41e601c13c525", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC1155Upgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155Upgradeable.sol/ERC1155Upgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol": { - "lastModificationDate": 1685365987276, - "contentHash": "eb51ed084f6f7fd2c7098715c5690285", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155ReceiverUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol": { - "lastModificationDate": 1685365987276, - "contentHash": "a407c5f8256246823385d0d7f0a83f57", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155Upgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155Upgradeable.sol/IERC1155Upgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol": { - "lastModificationDate": 1685365987277, - "contentHash": "8b7e95c747e2dab3b5444b37410a8315", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155MetadataURIUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol": { - "lastModificationDate": 1685365987282, - "contentHash": "228f256dbb21393bc9ad02648e222f74", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.1", - "artifacts": { - "AddressUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "AddressUpgradeable.sol/AddressUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol": { - "lastModificationDate": 1685365987283, - "contentHash": "6200b84950eb05b4a92a39fd1d6e0f9b", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ContextUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ContextUpgradeable.sol/ContextUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol": { - "lastModificationDate": 1685365987283, - "contentHash": "3805d0267faeda96624b50a67ca89f08", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "StringsUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StringsUpgradeable.sol/StringsUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol": { - "lastModificationDate": 1685365987285, - "contentHash": "5f2d8b81c0ff5bd2047b4846c20b998d", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC165Upgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC165Upgradeable.sol/ERC165Upgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol": { - "lastModificationDate": 1685365987285, - "contentHash": "d6ecf203a5e72c845be9bbf2f304a289", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC165Upgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC165Upgradeable.sol/IERC165Upgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol": { - "lastModificationDate": 1685365987285, - "contentHash": "469f71655418cc5f328fcc9bfdf10e9a", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "MathUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "MathUpgradeable.sol/MathUpgradeable.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol": { - "lastModificationDate": 1685365990166, - "contentHash": "e085b997d367140ccf777fbec59bc9ea", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "SuperTokenV1Library": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SuperTokenV1Library.sol/SuperTokenV1Library.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol": { - "lastModificationDate": 1685365990167, - "contentHash": "253f76f0473cf1297607b03447c4b53e", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol" - ], - "versionRequirement": null, - "artifacts": { - "IConstantFlowAgreementV1": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol": { - "lastModificationDate": 1685365990167, - "contentHash": "60042f78e0fa54a8547790c391ab27c1", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol" - ], - "versionRequirement": null, - "artifacts": { - "IInstantDistributionAgreementV1": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol": { - "lastModificationDate": 1685365990167, - "contentHash": "c118221a38683150d24833eadb9c8b37", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": null, - "artifacts": { - "BatchOperation": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Definitions.sol/BatchOperation.json" - }, - "ContextDefinitions": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Definitions.sol/ContextDefinitions.json" - }, - "FlowOperatorDefinitions": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Definitions.sol/FlowOperatorDefinitions.json" - }, - "SuperAppDefinitions": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Definitions.sol/SuperAppDefinitions.json" - }, - "SuperfluidGovernanceConfigs": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Definitions.sol/SuperfluidGovernanceConfigs.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol": { - "lastModificationDate": 1685365990167, - "contentHash": "49d978f06d4edeb5125a7152d6897e69", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperAgreement": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperAgreement.sol/ISuperAgreement.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol": { - "lastModificationDate": 1685365990167, - "contentHash": "3b1a28352fc3ab7b2659bc3ab3c7bb92", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperApp": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperApp.sol/ISuperApp.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "013ebf846bf7079b1aaee07a4bd5dd7e", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperToken.sol/ISuperToken.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "449ec5f0a35b1c86a9fd5b8bb0d3bd90", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperTokenFactory": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperTokenFactory.sol/ISuperTokenFactory.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "923d8bee2334395f7ad909b8e98e07e9", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperfluid": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperfluid.sol/ISuperfluid.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "f39a1c0568c38958f3c5c80b6fb1603c", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperfluidGovernance": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperfluidGovernance.sol/ISuperfluidGovernance.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "095cd6cdf7df13a739649f8917862cb0", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperfluidToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperfluidToken.sol/ISuperfluidToken.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "77968d7579793b9f87e33dec4d917f44", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ERC20WithTokenInfo": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "6326411b7eb3d451fdffd149d821a7cb", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": null, - "artifacts": { - "TokenInfo": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "TokenInfo.sol/TokenInfo.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol": { - "lastModificationDate": 1685365990169, - "contentHash": "0a0a462c08ee52310942265f672ff775", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol" - ], - "versionRequirement": "=0.8.19", - "artifacts": { - "ERC777Helper": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC777Helper.sol/ERC777Helper.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol": { - "lastModificationDate": 1685365990169, - "contentHash": "ae3bdcebbdffbb1443b14fcfa0532c07", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "=0.8.19", - "artifacts": { - "EventsEmitter": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "EventsEmitter.sol/EventsEmitter.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol": { - "lastModificationDate": 1685365990169, - "contentHash": "4bcdc2392096131058bc73fe9d13492a", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "=0.8.19", - "artifacts": { - "FixedSizeData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "FixedSizeData.sol/FixedSizeData.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol": { - "lastModificationDate": 1685365990172, - "contentHash": "0a5d9ccfeea5b7f07025bab444e3bd7e", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol" - ], - "versionRequirement": "=0.8.19", - "artifacts": { - "SuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SuperToken.sol/SuperToken.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol": { - "lastModificationDate": 1685365990173, - "contentHash": "b1d59d621cbf8e0104f0f12280dd3c00", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol" - ], - "versionRequirement": "=0.8.19", - "artifacts": { - "SuperfluidToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SuperfluidToken.sol/SuperfluidToken.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol": { - "lastModificationDate": 1685365990173, - "contentHash": "6a724db5d276cab07051ca31e05abe65", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol" - ], - "versionRequirement": "=0.8.19", - "artifacts": { - "UUPSProxiable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "UUPSProxiable.sol/UUPSProxiable.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol": { - "lastModificationDate": 1685365990174, - "contentHash": "2ae27b1e523379a8bf8131a711691c46", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "=0.8.19", - "artifacts": { - "UUPSUtils": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "UUPSUtils.sol/UUPSUtils.json" - } - } - }, - "script/base/create-publisher.s.sol": { - "lastModificationDate": 1693465366216, - "contentHash": "66795bf71d6064ceb68bf8b87fcf82ef", - "sourceName": "script/base/create-publisher.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "CreatePublisher": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base/create-publisher.s.sol/CreatePublisher.json" - } - } - }, - "script/base/deploy-ABSuperToken.s.sol": { - "lastModificationDate": 1689774928279, - "contentHash": "85ab0e2433f5fdcad0153d0db2dcfd74", - "sourceName": "script/base/deploy-ABSuperToken.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "test/_mocks/ABSuperToken.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployMockSuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" - } - } - }, - "script/base/deploy-implementations.s.sol": { - "lastModificationDate": 1699523979381, - "contentHash": "7b91a7e4dd208eed116e3d6df13ec06b", - "sourceName": "script/base/deploy-implementations.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployImplementation": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base/deploy-implementations.s.sol/DeployImplementation.json" - } - } - }, - "script/base/deploy-platform.s.sol": { - "lastModificationDate": 1699523979381, - "contentHash": "b249659654ea2b392c4629c74cc3f49e", - "sourceName": "script/base/deploy-platform.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployPlatform": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base/deploy-platform.s.sol/DeployPlatform.json" - } - } - }, - "script/base/deploy-royalty.s.sol": { - "lastModificationDate": 1695374870138, - "contentHash": "8f8077a3a079d877814bee151a073325", - "sourceName": "script/base/deploy-royalty.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base/deploy-royalty.s.sol/DeployRoyalty.json" - } - } - }, - "script/base/deploy-v1_1.s.sol": { - "lastModificationDate": 1701101671212, - "contentHash": "04063eb25d5f988bc0b2f3a60fb763b7", - "sourceName": "script/base/deploy-v1_1.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/token/ERC721/ERC721ABOE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployUpgrade": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-v1_1.s.sol/DeployUpgrade.json" - } - } - }, - "script/base-goerli/create-publisher.s.sol": { - "lastModificationDate": 1695374870137, - "contentHash": "e2267180499cb7133e1684156d386c07", - "sourceName": "script/base-goerli/create-publisher.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "CreatePublisher": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base-goerli/create-publisher.s.sol/CreatePublisher.json" - } - } - }, - "script/base-goerli/deploy-ABSuperToken.s.sol": { - "lastModificationDate": 1689947351617, - "contentHash": "85ab0e2433f5fdcad0153d0db2dcfd74", - "sourceName": "script/base-goerli/deploy-ABSuperToken.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "test/_mocks/ABSuperToken.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployMockSuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" - } - } - }, - "script/base-goerli/deploy-implementations.s.sol": { - "lastModificationDate": 1699523979380, - "contentHash": "05dbd9c58bd38f549b31bb572d64d339", - "sourceName": "script/base-goerli/deploy-implementations.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployImplementation": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base-goerli/deploy-implementations.s.sol/DeployImplementation.json" - } - } - }, - "script/base-goerli/deploy-kyc-upgrade.s.sol": { - "lastModificationDate": 1701679348295, - "contentHash": "559c6c819096ca166379a327a22cec6b", - "sourceName": "script/base-goerli/deploy-kyc-upgrade.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/token/ERC721/ERC721ABOE.sol", - "src/utils/ABKYCModule.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployKYCUpgrade": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json" - } - } - }, - "script/base-goerli/deploy-platform.s.sol": { - "lastModificationDate": 1701101671211, - "contentHash": "cbacf930a7cb4bf9d8fb6c6666a246aa", - "sourceName": "script/base-goerli/deploy-platform.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/token/ERC721/ERC721ABOE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployPlatform": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-platform.s.sol/DeployPlatform.json" - } - } - }, - "script/base-goerli/deploy-royalty.s.sol": { - "lastModificationDate": 1695374870138, - "contentHash": "8f8077a3a079d877814bee151a073325", - "sourceName": "script/base-goerli/deploy-royalty.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-royalty.s.sol/DeployRoyalty.json" - } - } - }, - "script/base-goerli/deploy-upgrade.s.sol": { - "lastModificationDate": 1700049426046, - "contentHash": "17ffe38bcdb1a46ab3332f5ba0577919", - "sourceName": "script/base-goerli/deploy-upgrade.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/token/ERC721/ERC721ABOE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployUpgrade": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-upgrade.s.sol/DeployUpgrade.json" - } - } - }, - "script/base-goerli/fireblocks/create-publisher.s.sol": { - "lastModificationDate": 1701679348296, - "contentHash": "e2267180499cb7133e1684156d386c07", - "sourceName": "script/base-goerli/fireblocks/create-publisher.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "CreatePublisher": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/create-publisher.s.sol/CreatePublisher.json" - } - } - }, - "script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol": { - "lastModificationDate": 1699431251723, - "contentHash": "39c6890b24873accfd9bc008fcfd019a", - "sourceName": "script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "test/_mocks/ABSuperToken.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployMockSuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" - } - } - }, - "script/base-goerli/fireblocks/deploy-platform.s.sol": { - "lastModificationDate": 1701679348296, - "contentHash": "b70d8c3e4c0e87035617d16c5b7ac0f5", - "sourceName": "script/base-goerli/fireblocks/deploy-platform.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployPlatform": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/deploy-platform.s.sol/DeployPlatform.json" - } - } - }, - "script/base-goerli/fireblocks/deploy-royalty.s.sol": { - "lastModificationDate": 1701679348296, - "contentHash": "8f8077a3a079d877814bee151a073325", - "sourceName": "script/base-goerli/fireblocks/deploy-royalty.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "fireblocks/deploy-royalty.s.sol/DeployRoyalty.json" - } - } - }, - "script/goerli/fireblocks/create-publisher.s.sol": { - "lastModificationDate": 1701679348296, - "contentHash": "e2267180499cb7133e1684156d386c07", - "sourceName": "script/goerli/fireblocks/create-publisher.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "CreatePublisher": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json" - } - } - }, - "script/goerli/fireblocks/deploy-ABSuperToken.s.sol": { - "lastModificationDate": 1699431251724, - "contentHash": "39c6890b24873accfd9bc008fcfd019a", - "sourceName": "script/goerli/fireblocks/deploy-ABSuperToken.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "test/_mocks/ABSuperToken.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployMockSuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" - } - } - }, - "script/goerli/fireblocks/deploy-platform.s.sol": { - "lastModificationDate": 1701679348297, - "contentHash": "f4b11546308bcfa921e15dd8e55ca1b8", - "sourceName": "script/goerli/fireblocks/deploy-platform.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployPlatform": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json" - } - } - }, - "script/goerli/fireblocks/deploy-royalty.s.sol": { - "lastModificationDate": 1701679348297, - "contentHash": "8f8077a3a079d877814bee151a073325", - "sourceName": "script/goerli/fireblocks/deploy-royalty.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json" - } - } - }, - "script/op/deploy-ABSuperToken.s.sol": { - "lastModificationDate": 1685365891000, - "contentHash": "1d056aa991c6d5dfab2d1e455afd5113", - "sourceName": "script/op/deploy-ABSuperToken.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "test/_mocks/ABSuperToken.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployMockSuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" - } - } - }, - "script/op/deploy-platform.s.sol": { - "lastModificationDate": 1699523979382, - "contentHash": "bd1558a2a1b08abdadcab46e1dc68d55", - "sourceName": "script/op/deploy-platform.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployPlatform": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "op/deploy-platform.s.sol/DeployPlatform.json" - } - } - }, - "script/op/deploy-royalty.s.sol": { - "lastModificationDate": 1695374870139, - "contentHash": "bb2815d1b7297d11c82eee3952d59434", - "sourceName": "script/op/deploy-royalty.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "op/deploy-royalty.s.sol/DeployRoyalty.json" - } - } - }, - "src/factory/AnotherCloneFactory.sol": { - "lastModificationDate": 1700579304455, - "contentHash": "b5ced6a0649e68a9a9b89eb5ed9cbc98", - "sourceName": "src/factory/AnotherCloneFactory.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "AnotherCloneFactory": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "AnotherCloneFactory.sol/AnotherCloneFactory.json" - } - } - }, - "src/libraries/ABDataTypes.sol": { - "lastModificationDate": 1701705525140, - "contentHash": "cea9e196d6467ea9022b99325ee0179b", - "sourceName": "src/libraries/ABDataTypes.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABDataTypes": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABDataTypes.sol/ABDataTypes.json" - } - } - }, - "src/libraries/ABErrors.sol": { - "lastModificationDate": 1701784052020, - "contentHash": "a63b071cfa179773d36b3b758b8ff206", - "sourceName": "src/libraries/ABErrors.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABErrors": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABErrors.sol/ABErrors.json" - } - } - }, - "src/libraries/ABEvents.sol": { - "lastModificationDate": 1690989943842, - "contentHash": "fd828f54bf1543d5aafa603c67c38bda", - "sourceName": "src/libraries/ABEvents.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABEvents": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABEvents.sol/ABEvents.json" - } - } - }, - "src/royalty/ABRoyalty.sol": { - "lastModificationDate": 1700731414231, - "contentHash": "4c24e9ce7e19bfddebdc4f680ed5fd4a", - "sourceName": "src/royalty/ABRoyalty.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/IABKYCModule.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABRoyalty.sol/ABRoyalty.json" - } - } - }, - "src/royalty/IABRoyalty.sol": { - "lastModificationDate": 1700579269833, - "contentHash": "0bfe5b9b415c03d284b81b7295b9e873", - "sourceName": "src/royalty/IABRoyalty.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "IABRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IABRoyalty.sol/IABRoyalty.json" - } - } - }, - "src/token/ERC1155/ERC1155AB.sol": { - "lastModificationDate": 1701706334469, - "contentHash": "152b478934293983e8ad5d3c5c70c379", - "sourceName": "src/token/ERC1155/ERC1155AB.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC1155AB": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155AB.sol/ERC1155AB.json" - } - } - }, - "src/token/ERC721/ERC721AB.sol": { - "lastModificationDate": 1701706719742, - "contentHash": "6175c76c52ffee86d67c510cb40bc9f4", - "sourceName": "src/token/ERC721/ERC721AB.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721AB": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721AB.sol/ERC721AB.json" - } - } - }, - "src/token/ERC721/ERC721ABLE.sol": { - "lastModificationDate": 1701784056651, - "contentHash": "65ed9675609d8ac3007fd9954d5aab8c", - "sourceName": "src/token/ERC721/ERC721ABLE.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABLE": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLE.sol/ERC721ABLE.json" - } - } - }, - "src/token/ERC721/ERC721ABOE.sol": { - "lastModificationDate": 1701784138764, - "contentHash": "007099e235f4e0043240c421e63b7a68", - "sourceName": "src/token/ERC721/ERC721ABOE.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABOE": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABOE.sol/ERC721ABOE.json" - } - } - }, - "src/utils/ABDataRegistry.sol": { - "lastModificationDate": 1699519078082, - "contentHash": "01daae19991c3d298a84da11cea6a548", - "sourceName": "src/utils/ABDataRegistry.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/IABDataRegistry.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABDataRegistry": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABDataRegistry.sol/ABDataRegistry.json" - } - } - }, - "src/utils/ABKYCModule.sol": { - "lastModificationDate": 1701679348300, - "contentHash": "952daa693fab5b97f1019870c1992446", - "sourceName": "src/utils/ABKYCModule.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "src/libraries/ABErrors.sol", - "src/utils/IABKYCModule.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABKYCModule": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABKYCModule.sol/ABKYCModule.json" - } - } - }, - "src/utils/ABVerifier.sol": { - "lastModificationDate": 1699438246263, - "contentHash": "4d08d742c574856408bc4714443bce67", - "sourceName": "src/utils/ABVerifier.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "src/libraries/ABErrors.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABVerifier": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABVerifier.sol/ABVerifier.json" - } - } - }, - "src/utils/IABDataRegistry.sol": { - "lastModificationDate": 1699519078082, - "contentHash": "072410114586180b67b3b28e70466677", - "sourceName": "src/utils/IABDataRegistry.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "IABDataRegistry": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IABDataRegistry.sol/IABDataRegistry.json" - } - } - }, - "src/utils/IABKYCModule.sol": { - "lastModificationDate": 1700731414220, - "contentHash": "64652c1becafd8332899fbbc689facc2", - "sourceName": "src/utils/IABKYCModule.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "IABKYCModule": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IABKYCModule.sol/IABKYCModule.json" - } - } - }, - "src/utils/IABVerifier.sol": { - "lastModificationDate": 1699438246265, - "contentHash": "fd6c89ab4678e9b71919fa3b17964721", - "sourceName": "src/utils/IABVerifier.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "IABVerifier": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IABVerifier.sol/IABVerifier.json" - } - } - }, - "test/_mocks/ABSuperToken.sol": { - "lastModificationDate": 1689774928282, - "contentHash": "e3ae917be85f9c4b702856168287dc50", - "sourceName": "test/_mocks/ABSuperToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABSuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABSuperToken.sol/ABSuperToken.json" - } - } - }, - "test/_mocks/MockNFT.sol": { - "lastModificationDate": 1685365891003, - "contentHash": "46e23044e7157f33ccba3b4e3c835c2a", - "sourceName": "test/_mocks/MockNFT.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol", - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol", - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "MockNFT": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "MockNFT.sol/MockNFT.json" - } - } - }, - "test/_mocks/MockNFT1155.sol": { - "lastModificationDate": 1685365891003, - "contentHash": "f2a125a3dfdfd7723da9119b3256488d", - "sourceName": "test/_mocks/MockNFT1155.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "MockNFT1155": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "MockNFT1155.sol/MockNFT1155.json" - } - } - }, - "test/_mocks/MockToken.sol": { - "lastModificationDate": 1688715359855, - "contentHash": "76f897607ba873482fa32a4ffa54661b", - "sourceName": "test/_mocks/MockToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "MockToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "MockToken.sol/MockToken.json" - } - } - }, - "test/_testdata/ABRoyalty.td.sol": { - "lastModificationDate": 1689774928282, - "contentHash": "5c33f38ecb1bb6df367bbb9a27b1e70d", - "sourceName": "test/_testdata/ABRoyalty.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABRoyaltyTestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABRoyalty.td.sol/ABRoyaltyTestData.json" - } - } - }, - "test/_testdata/ABVerifier.td.sol": { - "lastModificationDate": 1685365891003, - "contentHash": "bbc9cfbadf55c2bba8535e2f112b0cd4", - "sourceName": "test/_testdata/ABVerifier.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABVerifierTestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABVerifier.td.sol/ABVerifierTestData.json" - } - } - }, - "test/_testdata/AnotherCloneFactory.td.sol": { - "lastModificationDate": 1689774928282, - "contentHash": "e8260c770956ee743d56367a16870e5a", - "sourceName": "test/_testdata/AnotherCloneFactory.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "AnotherCloneFactoryTestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json" - } - } - }, - "test/_testdata/ERC1155AB.td.sol": { - "lastModificationDate": 1701772177094, - "contentHash": "3cbee26ca119003d77f63f5cb840452b", - "sourceName": "test/_testdata/ERC1155AB.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC1155ABTestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155AB.td.sol/ERC1155ABTestData.json" - } - } - }, - "test/_testdata/ERC721ABLE.td.sol": { - "lastModificationDate": 1701772177094, - "contentHash": "af912b993a2c290ae842694a7da3e292", - "sourceName": "test/_testdata/ERC721ABLE.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABTestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLE.td.sol/ERC721ABTestData.json" - } - } - }, - "test/_testdata/ERC721ABOE.td.sol": { - "lastModificationDate": 1701772177095, - "contentHash": "b7f1965d2b763481b6ec39413d9c79f9", - "sourceName": "test/_testdata/ERC721ABOE.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABOETestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABOE.td.sol/ERC721ABOETestData.json" - } - } - }, - "test/factory/AnotherCloneFactory.t.sol": { - "lastModificationDate": 1701101671214, - "contentHash": "231bdc9a61da91b7c17310ca391a1f50", - "sourceName": "test/factory/AnotherCloneFactory.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/token/ERC721/ERC721ABOE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol", - "test/_testdata/AnotherCloneFactory.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "AnotherCloneFactoryTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json" - } - } - }, - "test/royalty/ABRoyalty.t.sol": { - "lastModificationDate": 1701679348301, - "contentHash": "244b285c08d97f5f87b553ebbde6029f", - "sourceName": "test/royalty/ABRoyalty.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABKYCModule.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol", - "test/_mocks/ABSuperToken.sol", - "test/_testdata/ABRoyalty.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABRoyaltyTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABRoyalty.t.sol/ABRoyaltyTest.json" - } - } - }, - "test/token/ERC1155/ERC1155AB.t.sol": { - "lastModificationDate": 1701707153065, - "contentHash": "97729cddbce4e4d3c9214d48f583c306", - "sourceName": "test/token/ERC1155/ERC1155AB.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol", - "test/_mocks/ABSuperToken.sol", - "test/_mocks/MockToken.sol", - "test/_testdata/ERC1155AB.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC1155ABTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155AB.t.sol/ERC1155ABTest.json" - } - } - }, - "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1701782983217, - "contentHash": "cf3807f04e0e45876b87a7f88e180b3b", - "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABKYCModule.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol", - "test/_mocks/ABSuperToken.sol", - "test/_mocks/MockToken.sol", - "test/_testdata/ERC721ABLE.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLE.t.sol/ERC721ABTest.json" - } - } - }, - "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1701784655497, - "contentHash": "e1ed034ca0afdfd3a3077328fca464b3", - "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABOE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABKYCModule.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "src/utils/IABVerifier.sol", - "test/_mocks/ABSuperToken.sol", - "test/_mocks/MockToken.sol", - "test/_testdata/ERC721ABOE.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABOETest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABOE.t.sol/ERC721ABOETest.json" - } - } - }, - "test/utils/ABDataRegistry.t.sol": { - "lastModificationDate": 1701679348303, - "contentHash": "c9efb686599e96d0f106725bb622c2b2", - "sourceName": "test/utils/ABDataRegistry.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABKYCModule.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABKYCModule.sol", - "test/_mocks/ABSuperToken.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABDataRegistryTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABDataRegistry.t.sol/ABDataRegistryTest.json" - } - } - }, - "test/utils/ABVerifier.t.sol": { - "lastModificationDate": 1699523979388, - "contentHash": "9c9577365435fdbc47bbf215a8914342", - "sourceName": "test/utils/ABVerifier.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "src/libraries/ABErrors.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABVerifier.sol", - "test/_testdata/ABVerifier.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABVerifierTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABVerifier.t.sol/ABVerifierTest.json" - } - } - } - } -} \ No newline at end of file +{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1685365984533,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1685365984533,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1685365984533,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1685365984533,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1685365984533,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1685365985360,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685365984591,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1685365984591,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685365984592,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685365984592,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685365984592,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1685365984592,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1685365984592,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1685365984592,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1685365984592,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1685365984592,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1685365984592,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1685365984593,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1685365984593,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685365984593,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1685365984593,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685365984593,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1685365984594,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685365985432,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1685365985437,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685365985446,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1685365985446,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685365985447,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1685365985447,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1685365985447,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685365985447,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685365985447,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685365985448,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1685365985448,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685365985449,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1685365985449,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1685365985450,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1685365985451,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1685365985451,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685365985451,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685365985451,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1685365985452,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685365985452,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685365985452,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685365985452,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685365985452,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1685365985452,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1685365985453,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685365985454,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1685365985454,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1685365985454,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685365985454,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1685365985455,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685365985455,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685365985455,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685365985455,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1685365985456,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1685365985456,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685365985457,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685365985457,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1685365985457,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685365985457,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685365987260,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1685365987260,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685365987260,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685365987276,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1685365987276,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1685365987276,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685365987276,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1685365987277,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685365987282,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1685365987283,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685365987283,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1685365987285,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1685365987285,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685365987285,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685365990166,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1685365990167,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1685365990167,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685365990167,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1685365990167,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685365990167,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685365990168,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685365990168,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1685365990168,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1685365990168,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1685365990168,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1685365990168,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1685365990168,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1685365990169,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1685365990169,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1685365990169,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685365990172,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1685365990173,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1685365990173,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1685365990174,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1693465366216,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1689774928279,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1699523979381,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1699523979381,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1701101671212,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1695374870137,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1689947351617,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1699523979380,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1701679348295,"contentHash":"559c6c819096ca166379a327a22cec6b","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1701101671211,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1700049426046,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1701679348296,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1699431251723,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1701679348296,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1701679348296,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1701679348296,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1699431251724,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1701679348297,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1701679348297,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1685365891000,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1699523979382,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1695374870139,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1702288153768,"contentHash":"c79788f065df67ef9e40262962362990","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1701705525140,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1701784052020,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1690989943842,"contentHash":"fd828f54bf1543d5aafa603c67c38bda","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1700731414231,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1700579269833,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1701706334469,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1701706719742,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1701784056651,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1701784138764,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1699519078082,"contentHash":"01daae19991c3d298a84da11cea6a548","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1701679348300,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1699438246263,"contentHash":"4d08d742c574856408bc4714443bce67","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1699519078082,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1700731414220,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1699438246265,"contentHash":"fd6c89ab4678e9b71919fa3b17964721","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1689774928282,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1685365891003,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1685365891003,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1688715359855,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1689774928282,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1685365891003,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1689774928282,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1701772177094,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1701772177094,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1701772177095,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1702288226734,"contentHash":"221e9c5db8ffe6c4f432956ac3b96b62","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1701679348301,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1701853876049,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1702285230549,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1702285254183,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1701679348303,"contentHash":"c9efb686599e96d0f106725bb622c2b2","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1699523979388,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file diff --git a/test/factory/AnotherCloneFactory.t.sol b/test/factory/AnotherCloneFactory.t.sol index 02b52e3..7c8ced7 100644 --- a/test/factory/AnotherCloneFactory.t.sol +++ b/test/factory/AnotherCloneFactory.t.sol @@ -25,9 +25,12 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { AnotherCloneFactory public anotherCloneFactory; ABRoyalty public royaltyImplementation; ERC1155AB public erc1155Implementation; - ERC721ABLE public erc721Implementation; + ERC721ABLE public erc721LEImplementation; ERC721ABOE public erc721OEImplementation; + uint256 public leImplementationId; + uint256 public oeImplementationId; + ProxyAdmin public proxyAdmin; TransparentUpgradeableProxy public anotherCloneFactoryProxy; TransparentUpgradeableProxy public abDataRegistryProxy; @@ -54,8 +57,8 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { erc1155Implementation = new ERC1155AB(); vm.label(address(erc1155Implementation), "erc1155Implementation"); - erc721Implementation = new ERC721ABLE(); - vm.label(address(erc721Implementation), "erc721Implementation"); + erc721LEImplementation = new ERC721ABLE(); + vm.label(address(erc721LEImplementation), "erc721LEImplementation"); erc721OEImplementation = new ERC721ABOE(); vm.label(address(erc721OEImplementation), "erc721OEImplementation"); @@ -75,11 +78,12 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { anotherCloneFactoryProxy = new TransparentUpgradeableProxy( address(new AnotherCloneFactory()), address(proxyAdmin), - abi.encodeWithSelector(AnotherCloneFactory.initialize.selector, - address(abDataRegistry), - address(abVerifier), - address(erc721Implementation), - address(erc1155Implementation), + abi.encodeWithSelector( + AnotherCloneFactory.initialize.selector, + address(abDataRegistry), + address(abVerifier), + address(erc721LEImplementation), + address(erc1155Implementation), address(royaltyImplementation) ) ); @@ -96,23 +100,20 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { } function test_initialize() public { - anotherCloneFactoryProxy = new TransparentUpgradeableProxy( - address(new AnotherCloneFactory()), - address(proxyAdmin), - "" - ); + anotherCloneFactoryProxy = + new TransparentUpgradeableProxy(address(new AnotherCloneFactory()), address(proxyAdmin), ""); anotherCloneFactory = AnotherCloneFactory(address(anotherCloneFactoryProxy)); anotherCloneFactory.initialize( address(abDataRegistry), address(abVerifier), - address(erc721Implementation), + address(erc721LEImplementation), address(erc1155Implementation), address(royaltyImplementation) ); assertEq(address(anotherCloneFactory.abDataRegistry()), address(abDataRegistry)); - assertEq(anotherCloneFactory.erc721Impl(), address(erc721Implementation)); + assertEq(anotherCloneFactory.erc721Impl(), address(erc721LEImplementation)); assertEq(anotherCloneFactory.erc1155Impl(), address(erc1155Implementation)); assertEq(anotherCloneFactory.royaltyImpl(), address(royaltyImplementation)); assertEq(anotherCloneFactory.hasRole(DEFAULT_ADMIN_ROLE_HASH, address(this)), true); @@ -123,7 +124,7 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { anotherCloneFactory.initialize( address(abDataRegistry), address(abVerifier), - address(erc721Implementation), + address(erc721LEImplementation), address(erc1155Implementation), address(royaltyImplementation) ); @@ -215,28 +216,51 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { anotherCloneFactory.revokePublisherAccess(_publisher); } - function test_createCollection721_publisher(address _publisher) public { + function test_createCollection721_publisher_limitedEdition(address _publisher) public { vm.assume(anotherCloneFactory.hasRole(PUBLISHER_ROLE_HASH, _publisher) == false); vm.assume(_publisher != address(anotherCloneFactory) && _publisher != address(0)); anotherCloneFactory.createPublisherProfile(_publisher, PUBLISHER_FEE); + leImplementationId = anotherCloneFactory.approveERC721Implementation(address(erc721LEImplementation)); vm.startPrank(_publisher); - anotherCloneFactory.createCollection721(NAME, SALT); + anotherCloneFactory.createCollection721(leImplementationId, NAME, SALT); (address nft, address publisher) = anotherCloneFactory.collections(0); assertEq(ERC721ABLE(nft).owner(), _publisher); + assertEq(ERC721ABLE(nft).IMPLEMENTATION_TYPE(), keccak256("LIMITED_EDITION")); + assertEq(publisher, _publisher); + + vm.stopPrank(); + } + + function test_createCollection721_publisher_openEdition(address _publisher) public { + vm.assume(anotherCloneFactory.hasRole(PUBLISHER_ROLE_HASH, _publisher) == false); + vm.assume(_publisher != address(anotherCloneFactory) && _publisher != address(0)); + + anotherCloneFactory.createPublisherProfile(_publisher, PUBLISHER_FEE); + oeImplementationId = anotherCloneFactory.approveERC721Implementation(address(erc721OEImplementation)); + + vm.startPrank(_publisher); + + anotherCloneFactory.createCollection721(oeImplementationId, NAME, SALT); + (address nft, address publisher) = anotherCloneFactory.collections(0); + + assertEq(ERC721ABLE(nft).owner(), _publisher); + assertEq(ERC721ABLE(nft).IMPLEMENTATION_TYPE(), keccak256("OPEN_EDITION")); assertEq(publisher, _publisher); vm.stopPrank(); } function test_createCollection721_nonPublisher(address _nonPublisher) public { - vm.expectRevert(); - vm.prank(_nonPublisher); + vm.assume(anotherCloneFactory.hasRole(PUBLISHER_ROLE_HASH, _nonPublisher) == false); + leImplementationId = anotherCloneFactory.approveERC721Implementation(address(erc721LEImplementation)); - anotherCloneFactory.createCollection721(NAME, SALT); + vm.prank(_nonPublisher); + vm.expectRevert(); + anotherCloneFactory.createCollection721(leImplementationId, NAME, SALT); } function test_createCollection721FromImplementation_adminRole(address _sender, address _publisher) public { @@ -250,7 +274,9 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { anotherCloneFactory.grantRole(AB_ADMIN_ROLE_HASH, _sender); vm.startPrank(_sender); - anotherCloneFactory.createCollection721FromImplementation(address(erc721Implementation), _publisher, NAME, SALT); + anotherCloneFactory.createCollection721FromImplementation( + address(erc721LEImplementation), _publisher, NAME, SALT + ); (address nft, address publisher) = anotherCloneFactory.collections(0); assertEq(ERC721ABLE(nft).owner(), _publisher); @@ -272,7 +298,9 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { vm.expectRevert(ABErrors.ACCOUNT_NOT_PUBLISHER.selector); vm.prank(_sender); - anotherCloneFactory.createCollection721FromImplementation(address(erc721Implementation), _publisher, NAME, SALT); + anotherCloneFactory.createCollection721FromImplementation( + address(erc721LEImplementation), _publisher, NAME, SALT + ); } function test_createCollection721FromImplementation_nonAdminRole(address _sender, address _publisher) public { @@ -286,7 +314,9 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { vm.expectRevert(); vm.prank(_sender); - anotherCloneFactory.createCollection721FromImplementation(address(erc721Implementation), _publisher, NAME, SALT); + anotherCloneFactory.createCollection721FromImplementation( + address(erc721LEImplementation), _publisher, NAME, SALT + ); } function test_createCollection1155_publisher(address _publisher) public { @@ -316,7 +346,7 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { function test_setERC721Implementation_admin() public { ERC721ABLE newErc721Implementation = new ERC721ABLE(); - assertEq(anotherCloneFactory.erc721Impl(), address(erc721Implementation)); + assertEq(anotherCloneFactory.erc721Impl(), address(erc721LEImplementation)); anotherCloneFactory.setERC721Implementation(address(newErc721Implementation)); @@ -375,15 +405,31 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { anotherCloneFactory.setABRoyaltyImplementation(address(newRoyaltyImplementation)); } - function test_predictERC721Address(address _publisher, bytes32 _salt) public { + function test_predictERC721Address_limitedEdition(address _publisher, bytes32 _salt) public { + vm.assume(_publisher != address(0)); + + anotherCloneFactory.createPublisherProfile(_publisher, PUBLISHER_FEE); + leImplementationId = anotherCloneFactory.approveERC721Implementation(address(erc721LEImplementation)); + + vm.startPrank(_publisher); + + address predictedAddress = anotherCloneFactory.predictERC721Address(leImplementationId, _salt); + anotherCloneFactory.createCollection721(leImplementationId, NAME, _salt); + (address nft,) = anotherCloneFactory.collections(0); + + assertEq(predictedAddress, nft); + } + + function test_predictERC721Address_openEdition(address _publisher, bytes32 _salt) public { vm.assume(_publisher != address(0)); anotherCloneFactory.createPublisherProfile(_publisher, PUBLISHER_FEE); + oeImplementationId = anotherCloneFactory.approveERC721Implementation(address(erc721OEImplementation)); vm.startPrank(_publisher); - address predictedAddress = anotherCloneFactory.predictERC721Address(_salt); - anotherCloneFactory.createCollection721(NAME, _salt); + address predictedAddress = anotherCloneFactory.predictERC721Address(oeImplementationId, _salt); + anotherCloneFactory.createCollection721(oeImplementationId, NAME, _salt); (address nft,) = anotherCloneFactory.collections(0); assertEq(predictedAddress, nft); diff --git a/test/token/ERC721/ERC721ABLE.t.sol b/test/token/ERC721/ERC721ABLE.t.sol index 68cb1ea..d5b538b 100644 --- a/test/token/ERC721/ERC721ABLE.t.sol +++ b/test/token/ERC721/ERC721ABLE.t.sol @@ -142,7 +142,8 @@ contract ERC721ABTest is Test, ERC721ABTestData { anotherCloneFactoryProxy = new TransparentUpgradeableProxy( address(new AnotherCloneFactory()), address(proxyAdmin), - abi.encodeWithSelector(AnotherCloneFactory.initialize.selector, + abi.encodeWithSelector( + AnotherCloneFactory.initialize.selector, address(abDataRegistry), address(abVerifier), address(erc721Impl), @@ -163,9 +164,10 @@ contract ERC721ABTest is Test, ERC721ABTestData { anotherCloneFactory.setABKYCModule(address(abKYCModule)); anotherCloneFactory.createPublisherProfile(publisher, PUBLISHER_FEE); + uint256 leImplementationId = anotherCloneFactory.approveERC721Implementation(address(erc721Impl)); vm.prank(publisher); - anotherCloneFactory.createCollection721(NAME, SALT); + anotherCloneFactory.createCollection721(leImplementationId, NAME, SALT); (address nftAddr,) = anotherCloneFactory.collections(0); @@ -173,11 +175,8 @@ contract ERC721ABTest is Test, ERC721ABTestData { } function test_initialize() public { - TransparentUpgradeableProxy erc721proxy = new TransparentUpgradeableProxy( - address(new ERC721ABLE()), - address(proxyAdmin), - "" - ); + TransparentUpgradeableProxy erc721proxy = + new TransparentUpgradeableProxy(address(new ERC721ABLE()), address(proxyAdmin), ""); nft = ERC721ABLE(address(erc721proxy)); nft.initialize(publisher, address(abDataRegistry), address(abVerifier), address(abKYCModule), NAME); diff --git a/test/token/ERC721/ERC721ABOE.t.sol b/test/token/ERC721/ERC721ABOE.t.sol index a62349c..df23bc0 100644 --- a/test/token/ERC721/ERC721ABOE.t.sol +++ b/test/token/ERC721/ERC721ABOE.t.sol @@ -145,7 +145,8 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { anotherCloneFactoryProxy = new TransparentUpgradeableProxy( address(new AnotherCloneFactory()), address(proxyAdmin), - abi.encodeWithSelector(AnotherCloneFactory.initialize.selector, + abi.encodeWithSelector( + AnotherCloneFactory.initialize.selector, address(abDataRegistry), address(abVerifier), address(erc721Impl), @@ -168,8 +169,10 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { anotherCloneFactory.setABKYCModule(address(abKYCModule)); anotherCloneFactory.createPublisherProfile(publisher, PUBLISHER_FEE); + uint256 oeImplementationId = anotherCloneFactory.approveERC721Implementation(address(erc721Impl)); - anotherCloneFactory.createCollection721FromImplementation(address(erc721OEImpl), publisher, NAME, SALT); + vm.prank(publisher); + anotherCloneFactory.createCollection721(oeImplementationId, NAME, SALT); (address nftAddr,) = anotherCloneFactory.collections(0); @@ -177,11 +180,8 @@ contract ERC721ABOETest is Test, ERC721ABOETestData { } function test_initialize() public { - TransparentUpgradeableProxy erc721proxy = new TransparentUpgradeableProxy( - address(new ERC721ABOE()), - address(proxyAdmin), - "" - ); + TransparentUpgradeableProxy erc721proxy = + new TransparentUpgradeableProxy(address(new ERC721ABOE()), address(proxyAdmin), ""); nft = ERC721ABOE(address(erc721proxy)); nft.initialize(publisher, address(abDataRegistry), address(abVerifier), address(abKYCModule), NAME); From e0d98a6e58e43b0c1e9b842e3247fa2b1f60007b Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 12 Dec 2023 09:44:41 +0100 Subject: [PATCH 62/74] cache --- forge-cache/solidity-files-cache.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index a1a9f8f..ef301c6 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -1 +1 @@ -{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1685365984533,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1685365984533,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1685365984533,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1685365984533,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1685365984533,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1685365985360,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685365984591,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1685365984591,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685365984592,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685365984592,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685365984592,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1685365984592,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1685365984592,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1685365984592,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1685365984592,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1685365984592,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1685365984592,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1685365984593,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1685365984593,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685365984593,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1685365984593,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685365984593,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1685365984594,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685365985432,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1685365985437,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685365985446,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1685365985446,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685365985447,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1685365985447,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1685365985447,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685365985447,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685365985447,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685365985448,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1685365985448,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685365985449,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1685365985449,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1685365985450,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1685365985451,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1685365985451,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685365985451,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685365985451,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1685365985452,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685365985452,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685365985452,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685365985452,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685365985452,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1685365985452,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1685365985453,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685365985454,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1685365985454,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1685365985454,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685365985454,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1685365985455,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685365985455,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685365985455,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685365985455,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1685365985456,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1685365985456,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685365985457,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685365985457,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1685365985457,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685365985457,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685365987260,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1685365987260,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685365987260,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685365987276,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1685365987276,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1685365987276,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685365987276,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1685365987277,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685365987282,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1685365987283,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685365987283,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1685365987285,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1685365987285,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685365987285,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685365990166,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1685365990167,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1685365990167,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685365990167,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1685365990167,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685365990167,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685365990168,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685365990168,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1685365990168,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1685365990168,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1685365990168,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1685365990168,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1685365990168,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1685365990169,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1685365990169,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1685365990169,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685365990172,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1685365990173,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1685365990173,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1685365990174,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1693465366216,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1689774928279,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1699523979381,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1699523979381,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1701101671212,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1695374870137,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1689947351617,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1699523979380,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1701679348295,"contentHash":"559c6c819096ca166379a327a22cec6b","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1701101671211,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1700049426046,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1701679348296,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1699431251723,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1701679348296,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1701679348296,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1701679348296,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1699431251724,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1701679348297,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1701679348297,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1685365891000,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1699523979382,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1695374870139,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1702288153768,"contentHash":"c79788f065df67ef9e40262962362990","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1701705525140,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1701784052020,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1690989943842,"contentHash":"fd828f54bf1543d5aafa603c67c38bda","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1700731414231,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1700579269833,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1701706334469,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1701706719742,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1701784056651,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1701784138764,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1699519078082,"contentHash":"01daae19991c3d298a84da11cea6a548","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1701679348300,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1699438246263,"contentHash":"4d08d742c574856408bc4714443bce67","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1699519078082,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1700731414220,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1699438246265,"contentHash":"fd6c89ab4678e9b71919fa3b17964721","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1689774928282,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1685365891003,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1685365891003,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1688715359855,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1689774928282,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1685365891003,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1689774928282,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1701772177094,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1701772177094,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1701772177095,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1702288226734,"contentHash":"221e9c5db8ffe6c4f432956ac3b96b62","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1701679348301,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1701853876049,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1702285230549,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1702285254183,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1701679348303,"contentHash":"c9efb686599e96d0f106725bb622c2b2","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1699523979388,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file +{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1680596959844,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1686130554341,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1680596959845,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1680596959845,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1680596959845,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1680596960583,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685431596392,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1680596959867,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685431596392,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685431596392,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685431596392,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1680596959868,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1680596959868,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1680596959868,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1680596959868,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1680596959868,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1680596959868,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1701338065645,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1680596959868,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685431596392,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1680596959868,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685431596393,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1680596959869,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685431596444,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1680596960619,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685431596455,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685431596455,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1680596960628,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685431596455,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685431596455,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596455,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1686297155172,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685431596456,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1680596960629,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1680596960629,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1680596960630,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1680596960630,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1680596960631,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685431596458,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685431596458,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1680596960632,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1680596960633,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685431596459,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1680596960634,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1680596960634,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685431596460,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1680596960634,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685431596460,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685431596461,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685431596461,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685431596461,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685431596462,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1680596960636,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685431596462,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1680596962383,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596555,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1686313924066,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1680596962399,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685431596555,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1680596962400,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685431596559,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1680596962405,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685431596560,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685431596561,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685431596647,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685431596647,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1680596963987,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685431596647,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685431596648,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685431596648,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1680596963987,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1680596963987,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1680596963987,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1680596963988,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1680596963989,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1680596963989,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685431596649,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1680596963992,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1680596963992,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1680596963992,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1693465366216,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870138,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1699523979381,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1699523979381,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1701101671212,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1695374870137,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870137,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1699523979380,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1702370649096,"contentHash":"559c6c819096ca166379a327a22cec6b","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1701101671211,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1700049426046,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649096,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649097,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649097,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649097,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649098,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649098,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649098,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649098,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1693465366217,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1699523979382,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1695374870139,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1702370649099,"contentHash":"c79788f065df67ef9e40262962362990","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1702370649100,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1702370649100,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1698653960245,"contentHash":"fd828f54bf1543d5aafa603c67c38bda","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1702370649101,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1702370649102,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1702370649103,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1702370649103,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1702370649103,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1702370649104,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"01daae19991c3d298a84da11cea6a548","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1702370649105,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1702370649105,"contentHash":"4d08d742c574856408bc4714443bce67","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1702370649106,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1702370649106,"contentHash":"fd6c89ab4678e9b71919fa3b17964721","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1695374870143,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1693465366219,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1693465366220,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1693465366220,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1695374870143,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1693465366220,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1695374870144,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1702370649107,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1702370649107,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1702370649108,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1702370649109,"contentHash":"221e9c5db8ffe6c4f432956ac3b96b62","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1702370649109,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1702370649110,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1702370649110,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1702370649111,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1702370649112,"contentHash":"c9efb686599e96d0f106725bb622c2b2","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1699523979388,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file From a1e3c4201d8e49f1fe4d52138990b2e18945cc7c Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 12 Dec 2023 11:38:18 +0100 Subject: [PATCH 63/74] updated test coverage --- forge-cache/solidity-files-cache.json | 2 +- lcov.info | 936 +++++++++++++------------- 2 files changed, 479 insertions(+), 459 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index ef301c6..0a7387e 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -1 +1 @@ -{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1680596959844,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1686130554341,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1680596959845,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1680596959845,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1680596959845,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1680596960583,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685431596392,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1680596959867,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685431596392,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685431596392,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685431596392,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1680596959868,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1680596959868,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1680596959868,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1680596959868,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1680596959868,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1680596959868,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1701338065645,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1680596959868,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685431596392,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1680596959868,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685431596393,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1680596959869,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685431596444,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1680596960619,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685431596455,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685431596455,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1680596960628,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685431596455,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685431596455,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596455,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1686297155172,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685431596456,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1680596960629,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1680596960629,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1680596960630,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1680596960630,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1680596960631,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685431596458,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685431596458,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1680596960632,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1680596960633,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685431596459,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1680596960634,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1680596960634,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685431596460,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1680596960634,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685431596460,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685431596461,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685431596461,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685431596461,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685431596462,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1680596960636,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685431596462,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1680596962383,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596555,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1686313924066,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1680596962399,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685431596555,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1680596962400,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685431596559,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1680596962405,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685431596560,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685431596561,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685431596647,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685431596647,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1680596963987,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685431596647,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685431596648,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685431596648,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1680596963987,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1680596963987,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1680596963987,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1680596963988,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1680596963989,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1680596963989,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685431596649,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1680596963992,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1680596963992,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1680596963992,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1693465366216,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870138,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1699523979381,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1699523979381,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1701101671212,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1695374870137,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870137,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1699523979380,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1702370649096,"contentHash":"559c6c819096ca166379a327a22cec6b","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1701101671211,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1700049426046,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649096,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649097,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649097,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649097,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649098,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649098,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649098,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649098,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1693465366217,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1699523979382,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1695374870139,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1702370649099,"contentHash":"c79788f065df67ef9e40262962362990","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1702370649100,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1702370649100,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1698653960245,"contentHash":"fd828f54bf1543d5aafa603c67c38bda","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1702370649101,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1702370649102,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1702370649103,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1702370649103,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1702370649103,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1702370649104,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"01daae19991c3d298a84da11cea6a548","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1702370649105,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1702370649105,"contentHash":"4d08d742c574856408bc4714443bce67","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1702370649106,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1702370649106,"contentHash":"fd6c89ab4678e9b71919fa3b17964721","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1695374870143,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1693465366219,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1693465366220,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1693465366220,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1695374870143,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1693465366220,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1695374870144,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1702370649107,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1702370649107,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1702370649108,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1702370649109,"contentHash":"221e9c5db8ffe6c4f432956ac3b96b62","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1702370649109,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1702370649110,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1702370649110,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1702370649111,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1702370649112,"contentHash":"c9efb686599e96d0f106725bb622c2b2","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1699523979388,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file +{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1680596959844,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1686130554341,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1680596959845,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1680596959845,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1680596959845,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1680596960583,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685431596392,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1680596959867,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685431596392,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685431596392,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685431596392,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1680596959868,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1680596959868,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1680596959868,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1680596959868,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1680596959868,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1680596959868,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1701338065645,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1680596959868,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685431596392,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1680596959868,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685431596393,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1680596959869,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685431596444,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1680596960619,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685431596455,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685431596455,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1680596960628,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685431596455,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685431596455,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596455,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1686297155172,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685431596456,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1680596960629,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1680596960629,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1680596960630,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1680596960630,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1680596960631,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685431596458,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685431596458,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1680596960632,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1680596960633,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685431596459,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1680596960634,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1680596960634,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685431596460,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1680596960634,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685431596460,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685431596461,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685431596461,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685431596461,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685431596462,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1680596960636,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685431596462,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1680596962383,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596555,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1686313924066,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1680596962399,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685431596555,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1680596962400,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685431596559,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1680596962405,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685431596560,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685431596561,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685431596647,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685431596647,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1680596963987,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685431596647,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685431596648,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685431596648,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1680596963987,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1680596963987,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1680596963987,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1680596963988,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1680596963989,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1680596963989,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685431596649,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1680596963992,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1680596963992,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1680596963992,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1693465366216,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870138,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1699523979381,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1699523979381,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1701101671212,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1695374870137,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870137,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1699523979380,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1702370649096,"contentHash":"559c6c819096ca166379a327a22cec6b","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1701101671211,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1700049426046,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649096,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649097,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649097,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649097,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649098,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649098,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649098,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649098,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1693465366217,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1699523979382,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1695374870139,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1702370649099,"contentHash":"c79788f065df67ef9e40262962362990","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1702370649100,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1702370649100,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1698653960245,"contentHash":"fd828f54bf1543d5aafa603c67c38bda","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1702370649101,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1702370649102,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1702370649103,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1702370649103,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1702370649103,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1702370649104,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"01daae19991c3d298a84da11cea6a548","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1702370649105,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1702370649105,"contentHash":"4d08d742c574856408bc4714443bce67","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1702370649106,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1702370649106,"contentHash":"fd6c89ab4678e9b71919fa3b17964721","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1695374870143,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1693465366219,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1693465366220,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1693465366220,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1695374870143,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1693465366220,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1695374870144,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1702370649107,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1702370649107,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1702370649108,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1702377451281,"contentHash":"bee41342f6760fa179590adf1e84d1e2","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1702370649109,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1702370649110,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1702370649110,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1702370649111,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1702370649112,"contentHash":"c9efb686599e96d0f106725bb622c2b2","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1699523979388,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file diff --git a/lcov.info b/lcov.info index a03341a..b10da3e 100644 --- a/lcov.info +++ b/lcov.info @@ -525,106 +525,113 @@ BRH:0 end_of_record TN: SF:src/factory/AnotherCloneFactory.sol -FN:118,AnotherCloneFactory.initialize -FNDA:228,AnotherCloneFactory.initialize -DA:125,227 -DA:126,227 -DA:127,227 -DA:128,227 -DA:129,227 -DA:131,227 -DA:134,227 -DA:135,227 -FN:152,AnotherCloneFactory.createCollection721 -FNDA:860,AnotherCloneFactory.createCollection721 -DA:154,604 -DA:157,604 -DA:160,604 -FN:170,AnotherCloneFactory.createCollection1155 +FN:121,AnotherCloneFactory.initialize +FNDA:199,AnotherCloneFactory.initialize +DA:128,198 +DA:129,198 +DA:130,198 +DA:131,198 +DA:132,198 +DA:134,198 +DA:137,198 +DA:138,198 +FN:156,AnotherCloneFactory.createCollection721 +FNDA:1379,AnotherCloneFactory.createCollection721 +DA:161,1123 +DA:164,1123 +DA:167,1123 +FN:177,AnotherCloneFactory.createCollection1155 FNDA:810,AnotherCloneFactory.createCollection1155 -DA:172,554 -DA:175,554 -DA:178,554 -FN:198,AnotherCloneFactory.createCollection721FromImplementation -FNDA:1062,AnotherCloneFactory.createCollection721FromImplementation -DA:204,806 -BRDA:204,0,0,256 -BRDA:204,0,1,550 -DA:207,550 -DA:210,550 -DA:213,550 -FN:225,AnotherCloneFactory.createPublisherProfile +DA:179,554 +DA:182,554 +DA:185,554 +FN:205,AnotherCloneFactory.createCollection721FromImplementation +FNDA:1024,AnotherCloneFactory.createCollection721FromImplementation +DA:211,768 +BRDA:211,0,0,256 +BRDA:211,0,1,512 +DA:214,512 +DA:217,512 +DA:220,512 +FN:232,AnotherCloneFactory.createPublisherProfile FNDA:1024,AnotherCloneFactory.createPublisherProfile -DA:230,768 -BRDA:230,1,0,256 -BRDA:230,1,1,512 -DA:233,512 -BRDA:233,2,0,256 -BRDA:233,2,1,256 -DA:236,256 -DA:239,256 -FN:250,AnotherCloneFactory.createPublisherProfile -FNDA:3781,AnotherCloneFactory.createPublisherProfile -DA:252,3525 -BRDA:252,3,0,256 -BRDA:252,3,1,3269 -DA:255,3269 -BRDA:255,4,0,256 -BRDA:255,4,1,3013 -DA:258,3013 -DA:261,3013 -DA:264,3013 -DA:267,3013 -FN:277,AnotherCloneFactory.revokePublisherAccess +DA:237,768 +BRDA:237,1,0,256 +BRDA:237,1,1,512 +DA:240,512 +BRDA:240,2,0,256 +BRDA:240,2,1,256 +DA:243,256 +DA:246,256 +FN:257,AnotherCloneFactory.createPublisherProfile +FNDA:4262,AnotherCloneFactory.createPublisherProfile +DA:259,4006 +BRDA:259,3,0,256 +BRDA:259,3,1,3750 +DA:262,3750 +BRDA:262,4,0,256 +BRDA:262,4,1,3494 +DA:265,3494 +DA:268,3494 +DA:271,3494 +DA:274,3494 +FN:284,AnotherCloneFactory.revokePublisherAccess FNDA:512,AnotherCloneFactory.revokePublisherAccess -DA:279,256 -FN:289,AnotherCloneFactory.setERC721Implementation +DA:286,256 +FN:296,AnotherCloneFactory.setERC721Implementation FNDA:257,AnotherCloneFactory.setERC721Implementation -DA:290,1 -FN:300,AnotherCloneFactory.setERC1155Implementation +DA:297,1 +FN:309,AnotherCloneFactory.approveERC721Implementation +FNDA:1379,AnotherCloneFactory.approveERC721Implementation +DA:314,1379 +DA:315,1379 +FN:326,AnotherCloneFactory.updateERC721Implementation +FNDA:0,AnotherCloneFactory.updateERC721Implementation +DA:330,0 +FN:340,AnotherCloneFactory.setERC1155Implementation FNDA:257,AnotherCloneFactory.setERC1155Implementation -DA:301,1 -FN:311,AnotherCloneFactory.setABRoyaltyImplementation +DA:341,1 +FN:351,AnotherCloneFactory.setABRoyaltyImplementation FNDA:257,AnotherCloneFactory.setABRoyaltyImplementation -DA:312,1 -FN:322,AnotherCloneFactory.setABKYCModule -FNDA:155,AnotherCloneFactory.setABKYCModule -DA:323,155 -FN:340,AnotherCloneFactory.predictERC721Address -FNDA:256,AnotherCloneFactory.predictERC721Address -DA:341,256 -FN:352,AnotherCloneFactory.predictERC1155Address +DA:352,1 +FN:362,AnotherCloneFactory.setABKYCModule +FNDA:124,AnotherCloneFactory.setABKYCModule +DA:363,124 +FN:381,AnotherCloneFactory.predictERC721Address +FNDA:512,AnotherCloneFactory.predictERC721Address +DA:386,512 +FN:397,AnotherCloneFactory.predictERC1155Address FNDA:256,AnotherCloneFactory.predictERC1155Address -DA:353,256 -FN:365,AnotherCloneFactory.predictAddressFromImplementation +DA:398,256 +FN:410,AnotherCloneFactory.predictAddressFromImplementation FNDA:256,AnotherCloneFactory.predictAddressFromImplementation -DA:370,256 -FN:382,AnotherCloneFactory.hasPublisherRole +DA:415,256 +FN:427,AnotherCloneFactory.hasPublisherRole FNDA:512,AnotherCloneFactory.hasPublisherRole -DA:383,512 -FN:391,AnotherCloneFactory._setupCollection -FNDA:1708,AnotherCloneFactory._setupCollection -DA:393,1708 -DA:396,1708 -DA:399,1708 -DA:402,1708 -FNF:16 -FNH:16 -LF:41 -LH:41 +DA:428,512 +FN:436,AnotherCloneFactory._setupCollection +FNDA:2189,AnotherCloneFactory._setupCollection +DA:438,2189 +DA:441,2189 +DA:444,2189 +DA:447,2189 +FNF:18 +FNH:17 +LF:44 +LH:43 BRF:10 BRH:10 end_of_record TN: SF:src/royalty/ABRoyalty.sol FN:109,ABRoyalty.initialize -FNDA:3042,ABRoyalty.initialize -DA:111,3041 -DA:112,3041 -DA:113,3041 -DA:114,3041 -DA:117,3041 -DA:120,3041 +FNDA:3523,ABRoyalty.initialize +DA:111,3522 +DA:112,3522 +DA:113,3522 +DA:114,3522 +DA:117,3522 +DA:120,3522 FN:136,ABRoyalty.claimPayout FNDA:256,ABRoyalty.claimPayout DA:137,256 @@ -674,14 +681,14 @@ DA:264,512 DA:267,512 DA:269,1024 FN:290,ABRoyalty.initPayoutIndex -FNDA:9865,ABRoyalty.initPayoutIndex -DA:294,9609 -DA:295,9609 +FNDA:9061,ABRoyalty.initPayoutIndex +DA:294,8805 +DA:295,8805 BRDA:295,3,0,- -BRDA:295,3,1,9609 +BRDA:295,3,1,8805 DA:296,0 -DA:298,9609 -DA:299,9609 +DA:298,8805 +DA:299,8805 FN:312,ABRoyalty.updatePayout1155 FNDA:1845,ABRoyalty.updatePayout1155 DA:318,1589 @@ -692,15 +699,15 @@ DA:321,1333 DA:323,2617 DA:326,2617 FN:340,ABRoyalty.updatePayout721 -FNDA:10077,ABRoyalty.updatePayout721 -DA:345,9821 -DA:348,9821 +FNDA:9278,ABRoyalty.updatePayout721 +DA:345,9022 +DA:348,9022 FN:359,ABRoyalty.distributeOnBehalf FNDA:256,ABRoyalty.distributeOnBehalf DA:360,256 FN:378,ABRoyalty.getUserSubscription -FNDA:5406,ABRoyalty.getUserSubscription -DA:380,5406 +FNDA:5632,ABRoyalty.getUserSubscription +DA:380,5632 FN:392,ABRoyalty.getClaimableAmount FNDA:256,ABRoyalty.getClaimableAmount DA:394,256 @@ -708,18 +715,18 @@ FN:407,ABRoyalty.getIndexInfo FNDA:256,ABRoyalty.getIndexInfo DA:412,256 FN:430,ABRoyalty._gainShare -FNDA:12438,ABRoyalty._gainShare -DA:432,12438 -BRDA:432,5,0,11670 -BRDA:432,5,1,12438 -DA:435,11670 -DA:436,11670 -DA:439,11670 +FNDA:11639,ABRoyalty._gainShare +DA:432,11639 +BRDA:432,5,0,10871 +BRDA:432,5,1,11639 +DA:435,10871 +DA:436,10871 +DA:439,10871 FN:452,ABRoyalty._loseShare -FNDA:12438,ABRoyalty._loseShare -DA:454,12438 +FNDA:11639,ABRoyalty._loseShare +DA:454,11639 BRDA:454,6,0,1792 -BRDA:454,6,1,12438 +BRDA:454,6,1,11639 DA:457,1792 DA:458,1792 DA:461,1792 @@ -952,360 +959,373 @@ BRH:49 end_of_record TN: SF:src/token/ERC721/ERC721AB.sol -FN:116,ERC721AB.initialize -FNDA:1160,ERC721AB.initialize -DA:124,1157 -DA:127,1157 -DA:128,1157 -DA:130,1157 -DA:133,1157 -DA:136,1157 -DA:139,1157 -DA:142,1157 -FN:159,ERC721AB.setBaseURI -FNDA:6,ERC721AB.setBaseURI -DA:160,3 -FN:170,ERC721AB.setSharePerToken -FNDA:1536,ERC721AB.setSharePerToken -DA:171,768 -FN:182,ERC721AB.setDropPhases -FNDA:45,ERC721AB.setDropPhases -DA:184,42 -BRDA:184,0,0,6 -BRDA:184,0,1,42 -DA:185,6 -DA:188,42 -DA:190,42 -DA:192,42 -DA:193,63 -DA:196,63 -BRDA:196,1,0,3 -BRDA:196,1,1,60 -DA:197,3 -DA:200,60 -DA:201,60 -DA:204,39 -FN:213,ERC721AB.withdrawToRightholder -FNDA:4864,ERC721AB.withdrawToRightholder -DA:214,4096 -DA:216,4096 -BRDA:216,2,0,768 -BRDA:216,2,1,3328 -DA:218,3328 -DA:219,3328 -DA:220,3328 -DA:222,3328 -BRDA:222,3,0,- -BRDA:222,3,1,2048 -DA:223,2048 +FN:122,ERC721AB.initialize +FNDA:1639,ERC721AB.initialize +DA:130,1637 +DA:133,1637 +DA:134,1637 +DA:136,1637 +DA:139,1637 +DA:142,1637 +DA:145,1637 +DA:148,1637 +FN:165,ERC721AB.setBaseURI +FNDA:4,ERC721AB.setBaseURI +DA:166,2 +FN:176,ERC721AB.setSharePerToken +FNDA:1024,ERC721AB.setSharePerToken +DA:177,512 +FN:188,ERC721AB.setDropPhases +FNDA:42,ERC721AB.setDropPhases +DA:190,40 +BRDA:190,0,0,4 +BRDA:190,0,1,40 +DA:191,4 +DA:194,40 +DA:196,40 +DA:198,40 +DA:199,54 +DA:202,54 +BRDA:202,1,0,2 +BRDA:202,1,1,52 +DA:203,2 +DA:206,52 +DA:207,52 +DA:210,38 +FN:219,ERC721AB.withdrawToRightholder +FNDA:3072,ERC721AB.withdrawToRightholder +DA:220,2560 +DA:222,2560 +BRDA:222,2,0,512 +BRDA:222,2,1,2048 DA:224,2048 -BRDA:224,4,0,- -BRDA:224,4,1,2048 -DA:227,3328 -BRDA:227,5,0,- -BRDA:227,5,1,2048 +DA:225,2048 +DA:226,2048 DA:228,2048 -DA:229,2048 -BRDA:229,6,0,- -BRDA:229,6,1,2048 -FN:241,ERC721AB.withdrawERC20 -FNDA:771,ERC721AB.withdrawERC20 -DA:243,3 -FN:252,ERC721AB.supportsInterface +BRDA:228,3,0,- +BRDA:228,3,1,1280 +DA:229,1280 +DA:230,1280 +BRDA:230,4,0,- +BRDA:230,4,1,1280 +DA:233,2048 +BRDA:233,5,0,- +BRDA:233,5,1,1280 +DA:234,1280 +DA:235,1280 +BRDA:235,6,0,- +BRDA:235,6,1,1280 +FN:245,ERC721AB.withdrawERC20ToRightholder +FNDA:0,ERC721AB.withdrawERC20ToRightholder +DA:246,0 +DA:248,0 +BRDA:248,7,0,- +BRDA:248,7,1,- +DA:250,0 +DA:251,0 +DA:252,0 +DA:254,0 +BRDA:254,8,0,- +BRDA:254,8,1,- +DA:255,0 +DA:256,0 +BRDA:256,9,0,- +BRDA:256,9,1,- +DA:259,0 +BRDA:259,10,0,- +BRDA:259,10,1,- +DA:260,0 +DA:261,0 +BRDA:261,11,0,- +BRDA:261,11,1,- +FN:273,ERC721AB.withdrawERC20 +FNDA:514,ERC721AB.withdrawERC20 +DA:274,2 +BRDA:274,12,0,- +BRDA:274,12,1,2 +DA:277,2 +FN:286,ERC721AB.supportsInterface FNDA:0,ERC721AB.supportsInterface -DA:253,0 -FN:262,ERC721AB.symbol -FNDA:6,ERC721AB.symbol -DA:263,6 -BRDA:263,7,0,3 -BRDA:263,7,1,6 -DA:264,3 -FN:276,ERC721AB.tokenURI -FNDA:24,ERC721AB.tokenURI -DA:277,24 -BRDA:277,8,0,3 -BRDA:277,8,1,21 -DA:279,21 -DA:281,21 -BRDA:281,9,0,3 -BRDA:281,9,1,18 -DA:282,3 -DA:284,18 -DA:286,18 -DA:287,18 -DA:289,18 -BRDA:289,10,0,15 -BRDA:289,10,1,3 -DA:290,15 -DA:292,3 -FN:314,ERC721AB._initDrop -FNDA:2630,ERC721AB._initDrop -DA:322,2630 -BRDA:322,11,0,3 -BRDA:322,11,1,2627 -DA:326,2627 -BRDA:325,12,0,6 -BRDA:325,12,1,2621 -DA:328,6 -DA:331,2621 -DA:334,2621 -DA:337,2621 -DA:340,2621 -BRDA:340,13,0,2615 -BRDA:340,13,1,2621 -DA:341,2615 -FN:353,ERC721AB._isPhaseActive -FNDA:30,ERC721AB._isPhaseActive -DA:355,30 -BRDA:355,14,0,3 -BRDA:355,14,1,27 -DA:356,27 -DA:358,27 -FN:367,ERC721AB._baseURI -FNDA:21,ERC721AB._baseURI -DA:368,21 -FN:377,ERC721AB._startTokenId -FNDA:1204,ERC721AB._startTokenId -DA:378,1204 -FN:381,ERC721AB._beforeMint -FNDA:30,ERC721AB._beforeMint -DA:382,30 -FN:385,ERC721AB._beforeTokenTransfers -FNDA:2626,ERC721AB._beforeTokenTransfers -DA:389,2626 -BRDA:389,15,0,- -BRDA:389,15,1,2623 -DA:390,2623 -FNF:15 +DA:287,0 +FN:296,ERC721AB.symbol +FNDA:4,ERC721AB.symbol +DA:297,4 +BRDA:297,13,0,2 +BRDA:297,13,1,4 +DA:298,2 +FN:310,ERC721AB.tokenURI +FNDA:16,ERC721AB.tokenURI +DA:311,16 +BRDA:311,14,0,2 +BRDA:311,14,1,14 +DA:313,14 +DA:315,14 +BRDA:315,15,0,2 +BRDA:315,15,1,12 +DA:316,2 +DA:318,12 +DA:320,12 +DA:321,12 +DA:323,12 +BRDA:323,16,0,10 +BRDA:323,16,1,2 +DA:324,10 +DA:326,2 +FN:349,ERC721AB._initDrop +FNDA:1596,ERC721AB._initDrop +DA:358,1596 +BRDA:358,17,0,2 +BRDA:358,17,1,1594 +DA:362,1594 +BRDA:361,18,0,4 +BRDA:361,18,1,1590 +DA:364,4 +DA:367,1590 +DA:370,1590 +BRDA:370,19,0,15 +BRDA:370,19,1,1590 +DA:371,15 +DA:375,1590 +DA:378,1590 +DA:381,1590 +BRDA:381,20,0,1586 +BRDA:381,20,1,1590 +DA:382,1586 +FN:394,ERC721AB._isPhaseActive +FNDA:36,ERC721AB._isPhaseActive +DA:396,36 +BRDA:396,21,0,4 +BRDA:396,21,1,32 +DA:397,32 +DA:399,32 +FN:408,ERC721AB._baseURI +FNDA:14,ERC721AB._baseURI +DA:409,14 +FN:418,ERC721AB._startTokenId +FNDA:1674,ERC721AB._startTokenId +DA:419,1674 +FN:422,ERC721AB._beforeMint +FNDA:36,ERC721AB._beforeMint +DA:423,36 +FN:426,ERC721AB._beforeTokenTransfers +FNDA:1600,ERC721AB._beforeTokenTransfers +DA:430,1600 +BRDA:430,22,0,- +BRDA:430,22,1,1598 +DA:431,1598 +FNF:16 FNH:14 -LF:62 -LH:61 -BRF:32 -BRH:27 +LF:76 +LH:64 +BRF:46 +BRH:30 end_of_record TN: SF:src/token/ERC721/ERC721ABLE.sol -FN:77,ERC721ABLE.mint -FNDA:12,ERC721ABLE.mint -DA:85,12 +FN:80,ERC721ABLE.mintWithETH +FNDA:12,ERC721ABLE.mintWithETH DA:88,12 -BRDA:88,0,0,1 -BRDA:88,0,1,10 -DA:91,10 +DA:91,12 +BRDA:91,0,0,1 +BRDA:91,0,1,10 DA:94,10 -BRDA:94,1,0,2 -BRDA:94,1,1,8 -DA:95,2 -DA:99,8 -BRDA:99,2,0,1 -BRDA:99,2,1,6 -DA:101,7 -BRDA:101,3,0,1 -BRDA:101,3,1,6 -DA:102,1 -DA:107,7 -BRDA:107,4,0,1 -BRDA:107,4,1,6 -DA:110,6 -BRDA:110,5,0,2 -BRDA:110,5,1,4 -DA:113,4 +DA:97,10 +BRDA:97,1,0,2 +BRDA:97,1,1,8 +DA:98,2 +DA:102,8 +BRDA:102,2,0,1 +BRDA:102,2,1,6 +DA:104,7 +BRDA:104,3,0,1 +BRDA:104,3,1,6 +DA:105,1 +DA:110,7 +BRDA:110,4,0,1 +BRDA:110,4,1,6 +DA:113,6 +BRDA:113,5,0,2 +BRDA:113,5,1,4 DA:116,4 -FN:138,ERC721ABLE.initDrop -FNDA:1051,ERC721ABLE.initDrop -DA:147,1050 -DA:148,1050 -BRDA:148,6,0,1 -BRDA:148,6,1,1049 -DA:150,1049 -FN:160,ERC721ABLE.setMaxSupply +DA:119,4 +FN:132,ERC721ABLE.mintWithERC20 +FNDA:10,ERC721ABLE.mintWithERC20 +DA:139,10 +FN:156,ERC721ABLE.mintWithERC20Permit +FNDA:1,ERC721ABLE.mintWithERC20Permit +DA:168,1 +DA:172,1 +FN:195,ERC721ABLE.initDrop +FNDA:1060,ERC721ABLE.initDrop +DA:205,1059 +DA:206,1059 +BRDA:206,6,0,1 +BRDA:206,6,1,1058 +DA:208,1058 +FN:218,ERC721ABLE.setMaxSupply FNDA:2,ERC721ABLE.setMaxSupply -DA:161,2 -BRDA:161,7,0,1 -BRDA:161,7,1,1 -DA:162,1 -FNF:3 -FNH:3 -LF:17 -LH:17 -BRF:16 -BRH:16 -end_of_record -TN: -SF:src/token/ERC721/ERC721ABLECoin.sol -FN:102,ERC721ABLECoin.mintETH -FNDA:0,ERC721ABLECoin.mintETH -DA:110,0 -DA:113,0 -BRDA:113,0,0,- -BRDA:113,0,1,- -DA:116,0 -DA:119,0 -BRDA:119,1,0,- -BRDA:119,1,1,- -DA:120,0 -DA:124,0 -BRDA:124,2,0,- -BRDA:124,2,1,- -DA:126,0 -BRDA:126,3,0,- -BRDA:126,3,1,- -DA:127,0 -DA:132,0 -BRDA:132,4,0,- -BRDA:132,4,1,- -DA:135,0 -BRDA:135,5,0,- -BRDA:135,5,1,- -DA:138,0 -DA:141,0 -FN:154,ERC721ABLECoin.mintCoin -FNDA:10,ERC721ABLECoin.mintCoin -DA:161,10 -FN:174,ERC721ABLECoin.mintCoinWithPermit -FNDA:1,ERC721ABLECoin.mintCoinWithPermit -DA:185,1 -DA:188,1 -FN:211,ERC721ABLECoin.initDrop -FNDA:1051,ERC721ABLECoin.initDrop -DA:222,1050 -DA:225,1050 -DA:228,1050 -DA:229,1050 -BRDA:229,6,0,1 -BRDA:229,6,1,1049 -DA:231,1049 -FN:241,ERC721ABLECoin.setMaxSupply -FNDA:2,ERC721ABLECoin.setMaxSupply -DA:242,2 -BRDA:242,7,0,1 -BRDA:242,7,1,1 -DA:243,1 -FN:256,ERC721ABLECoin._mintCoin -FNDA:11,ERC721ABLECoin._mintCoin -DA:264,11 -DA:267,11 -BRDA:267,8,0,1 -BRDA:267,8,1,9 -DA:270,9 -DA:273,9 -BRDA:273,9,0,2 -BRDA:273,9,1,7 -DA:274,2 -DA:278,7 -BRDA:278,10,0,1 -BRDA:278,10,1,5 -DA:280,6 -BRDA:280,11,0,1 -BRDA:280,11,1,5 -DA:281,1 -DA:286,6 -BRDA:286,12,0,1 -BRDA:286,12,1,5 -DA:288,5 -BRDA:288,13,0,- -BRDA:288,13,1,5 -DA:289,0 -DA:293,5 -DA:296,5 +DA:219,2 +BRDA:219,7,0,1 +BRDA:219,7,1,1 +DA:220,1 +FN:239,ERC721ABLE._mintWithERC20 +FNDA:11,ERC721ABLE._mintWithERC20 +DA:247,11 +DA:250,11 +BRDA:250,8,0,- +BRDA:250,8,1,11 +DA:253,11 +BRDA:253,9,0,1 +BRDA:253,9,1,9 +DA:256,9 +DA:259,9 +BRDA:259,10,0,2 +BRDA:259,10,1,7 +DA:260,2 +DA:264,7 +BRDA:264,11,0,1 +BRDA:264,11,1,5 +DA:266,6 +BRDA:266,12,0,1 +BRDA:266,12,1,5 +DA:267,1 +DA:272,6 +BRDA:272,13,0,1 +BRDA:272,13,1,5 +DA:275,5 +BRDA:275,14,0,- +BRDA:275,14,1,5 +DA:276,0 +DA:280,5 +DA:283,5 FNF:6 -FNH:5 -LF:35 -LH:22 -BRF:28 -BRH:15 +FNH:6 +LF:34 +LH:33 +BRF:30 +BRH:28 end_of_record TN: SF:src/token/ERC721/ERC721ABOE.sol -FN:74,ERC721ABOE.mint -FNDA:7,ERC721ABOE.mint -DA:82,7 -BRDA:82,0,0,- -BRDA:82,0,1,7 +FN:77,ERC721ABOE.mintWithETH +FNDA:7,ERC721ABOE.mintWithETH DA:85,7 +BRDA:85,0,0,- +BRDA:85,0,1,7 DA:88,7 -BRDA:88,1,0,1 -BRDA:88,1,1,5 -DA:91,5 +DA:91,7 +BRDA:91,1,0,1 +BRDA:91,1,1,5 DA:94,5 -BRDA:94,2,0,1 -BRDA:94,2,1,3 -DA:96,4 -BRDA:96,3,0,1 -BRDA:96,3,1,3 -DA:97,1 -DA:102,4 -BRDA:102,4,0,2 -BRDA:102,4,1,2 -DA:105,2 -FN:126,ERC721ABOE.initDrop -FNDA:533,ERC721ABOE.initDrop -DA:133,532 -FNF:2 -FNH:2 -LF:10 -LH:10 -BRF:10 -BRH:9 +DA:97,5 +BRDA:97,2,0,1 +BRDA:97,2,1,3 +DA:99,4 +BRDA:99,3,0,1 +BRDA:99,3,1,3 +DA:100,1 +DA:105,4 +BRDA:105,4,0,2 +BRDA:105,4,1,2 +DA:108,2 +FN:121,ERC721ABOE.mintWithERC20 +FNDA:5,ERC721ABOE.mintWithERC20 +DA:128,5 +FN:145,ERC721ABOE.mintWithERC20Permit +FNDA:1,ERC721ABOE.mintWithERC20Permit +DA:157,1 +DA:161,1 +FN:183,ERC721ABOE.initDrop +FNDA:539,ERC721ABOE.initDrop +DA:191,538 +FN:210,ERC721ABOE._mintWithERC20 +FNDA:6,ERC721ABOE._mintWithERC20 +DA:218,6 +DA:221,6 +BRDA:221,5,0,- +BRDA:221,5,1,6 +DA:224,6 +BRDA:224,6,0,1 +BRDA:224,6,1,4 +DA:227,4 +DA:230,4 +BRDA:230,7,0,1 +BRDA:230,7,1,2 +DA:232,3 +BRDA:232,8,0,1 +BRDA:232,8,1,2 +DA:233,1 +DA:238,3 +BRDA:238,9,0,- +BRDA:238,9,1,3 +DA:239,0 +DA:243,3 +DA:246,3 +FNF:5 +FNH:5 +LF:24 +LH:23 +BRF:20 +BRH:17 end_of_record TN: SF:src/utils/ABDataRegistry.sol FN:110,ABDataRegistry.initialize -FNDA:255,ABDataRegistry.initialize -DA:112,254 -DA:113,254 -DA:115,254 -DA:116,254 -DA:118,254 +FNDA:226,ABDataRegistry.initialize +DA:112,225 +DA:113,225 +DA:115,225 +DA:116,225 +DA:118,225 FN:139,ABDataRegistry.registerDrop -FNDA:3950,ABDataRegistry.registerDrop -DA:145,3694 -DA:148,3694 -DA:151,3694 -DA:153,3694 +FNDA:2919,ABDataRegistry.registerDrop +DA:145,2663 +DA:148,2663 +DA:151,2663 +DA:153,2663 BRDA:153,0,0,- -BRDA:153,0,1,3435 -DA:155,3435 +BRDA:153,0,1,2405 +DA:155,2405 FN:170,ABDataRegistry.on721TokenTransfer -FNDA:3135,ABDataRegistry.on721TokenTransfer -DA:174,3135 -DA:175,3135 +FNDA:2110,ABDataRegistry.on721TokenTransfer +DA:174,2110 +DA:175,2110 FN:190,ABDataRegistry.on1155TokenTransfer FNDA:53,ABDataRegistry.on1155TokenTransfer DA:197,53 DA:198,53 FN:218,ABDataRegistry.registerPublisher -FNDA:7109,ABDataRegistry.registerPublisher -DA:222,6853 +FNDA:7590,ABDataRegistry.registerPublisher +DA:222,7334 BRDA:222,1,0,256 -BRDA:222,1,1,6597 -DA:225,6597 -DA:228,6597 -DA:231,6597 +BRDA:222,1,1,7078 +DA:225,7078 +DA:228,7078 +DA:231,7078 FN:242,ABDataRegistry.grantCollectionRole -FNDA:2220,ABDataRegistry.grantCollectionRole -DA:244,1964 +FNDA:2701,ABDataRegistry.grantCollectionRole +DA:244,2445 FN:263,ABDataRegistry.distributeOnBehalf -FNDA:572,ABDataRegistry.distributeOnBehalf -DA:267,316 -DA:268,316 -BRDA:268,2,0,60 +FNDA:768,ABDataRegistry.distributeOnBehalf +DA:267,512 +DA:268,512 +BRDA:268,2,0,256 BRDA:268,2,1,256 DA:269,256 FN:279,ABDataRegistry.setTreasury -FNDA:1536,ABDataRegistry.setTreasury -DA:280,1280 +FNDA:1280,ABDataRegistry.setTreasury +DA:280,1024 FN:291,ABDataRegistry.setPublisherFee -FNDA:2304,ABDataRegistry.setPublisherFee -DA:292,2304 -DA:293,2304 +FNDA:1792,ABDataRegistry.setPublisherFee +DA:292,1792 +DA:293,1792 FN:305,ABDataRegistry.setDropFee -FNDA:2048,ABDataRegistry.setDropFee -DA:306,1792 +FNDA:1536,ABDataRegistry.setDropFee +DA:306,1280 BRDA:306,3,0,256 -BRDA:306,3,1,1536 -DA:307,1536 -DA:308,1536 +BRDA:306,3,1,1024 +DA:307,1024 +DA:308,1024 FN:319,ABDataRegistry.updatePublisher FNDA:768,ABDataRegistry.updatePublisher DA:320,512 @@ -1313,8 +1333,8 @@ BRDA:320,4,0,256 BRDA:320,4,1,256 DA:321,256 FN:338,ABDataRegistry.isPublisher -FNDA:1318,ABDataRegistry.isPublisher -DA:339,1318 +FNDA:1280,ABDataRegistry.isPublisher +DA:339,1280 FN:350,ABDataRegistry.getRoyaltyContract FNDA:512,ABDataRegistry.getRoyaltyContract DA:351,512 @@ -1322,16 +1342,16 @@ FN:362,ABDataRegistry.getPublisherFee FNDA:512,ABDataRegistry.getPublisherFee DA:363,512 FN:376,ABDataRegistry.getPayoutDetails -FNDA:5632,ABDataRegistry.getPayoutDetails -DA:381,5632 -BRDA:381,5,0,1280 -BRDA:381,5,1,4352 -DA:382,1280 -DA:384,4352 -DA:386,5632 +FNDA:4096,ABDataRegistry.getPayoutDetails +DA:381,4096 +BRDA:381,5,0,768 +BRDA:381,5,1,3328 +DA:382,768 +DA:384,3328 +DA:386,4096 FN:401,ABDataRegistry._getNextDropId -FNDA:3694,ABDataRegistry._getNextDropId -DA:402,3694 +FNDA:2663,ABDataRegistry._getNextDropId +DA:402,2663 FNF:16 FNH:16 LF:38 @@ -1342,15 +1362,15 @@ end_of_record TN: SF:src/utils/ABKYCModule.sol FN:94,ABKYCModule.initialize -FNDA:182,ABKYCModule.initialize -DA:95,182 +FNDA:151,ABKYCModule.initialize +DA:95,151 BRDA:95,0,0,- -BRDA:95,0,1,182 -DA:96,182 -DA:99,182 -DA:100,182 +BRDA:95,0,1,151 +DA:96,151 +DA:99,151 +DA:100,151 FN:116,ABKYCModule.beforeMint -FNDA:30,ABKYCModule.beforeMint +FNDA:36,ABKYCModule.beforeMint FN:131,ABKYCModule.beforeTransfer FNDA:0,ABKYCModule.beforeTransfer FN:140,ABKYCModule.beforeRoyaltyClaim @@ -1385,30 +1405,30 @@ end_of_record TN: SF:src/utils/ABVerifier.sol FN:97,ABVerifier.initialize -FNDA:247,ABVerifier.initialize -DA:98,246 +FNDA:218,ABVerifier.initialize +DA:98,217 BRDA:98,0,0,1 -BRDA:98,0,1,245 -DA:99,245 -DA:102,245 -DA:103,245 +BRDA:98,0,1,216 +DA:99,216 +DA:102,216 +DA:103,216 FN:121,ABVerifier.verifySignatureKYC FNDA:0,ABVerifier.verifySignatureKYC DA:122,0 DA:125,0 FN:139,ABVerifier.verifySignature721 -FNDA:531,ABVerifier.verifySignature721 -DA:144,531 -DA:146,531 -DA:151,531 +FNDA:534,ABVerifier.verifySignature721 +DA:144,534 +DA:146,534 +DA:151,534 FN:166,ABVerifier.verifySignature1155 FNDA:788,ABVerifier.verifySignature1155 DA:173,788 DA:175,788 DA:180,788 FN:196,ABVerifier.setDefaultSigner -FNDA:40,ABVerifier.setDefaultSigner -DA:197,39 +FNDA:46,ABVerifier.setDefaultSigner +DA:197,45 FN:206,ABVerifier.setKycSigner FNDA:0,ABVerifier.setKycSigner DA:207,0 @@ -1422,12 +1442,12 @@ FN:244,ABVerifier.getSigner FNDA:4,ABVerifier.getSigner DA:245,4 FN:262,ABVerifier._getSigner -FNDA:1323,ABVerifier._getSigner -DA:263,1323 -DA:264,1323 -DA:265,1323 +FNDA:1326,ABVerifier._getSigner +DA:263,1326 +DA:264,1326 +DA:265,1326 BRDA:265,1,0,2 -BRDA:265,1,1,1323 +BRDA:265,1,1,1326 DA:266,2 FNF:10 FNH:7 @@ -1483,8 +1503,8 @@ end_of_record TN: SF:test/_mocks/MockToken.sol FN:12,MockToken.mint -FNDA:344,MockToken.mint -DA:13,344 +FNDA:282,MockToken.mint +DA:13,282 FNF:1 FNH:1 LF:1 From 3299f4b43b529f88f16ae61059ec06065f565cdd Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 12 Dec 2023 11:38:36 +0100 Subject: [PATCH 64/74] added test coverage for update / approve implementation --- test/factory/AnotherCloneFactory.t.sol | 54 ++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/test/factory/AnotherCloneFactory.t.sol b/test/factory/AnotherCloneFactory.t.sol index 7c8ced7..84b22aa 100644 --- a/test/factory/AnotherCloneFactory.t.sol +++ b/test/factory/AnotherCloneFactory.t.sol @@ -343,6 +343,60 @@ contract AnotherCloneFactoryTest is Test, AnotherCloneFactoryTestData { anotherCloneFactory.createCollection1155(SALT); } + function test_approveERC721Implementation_admin(address _dummyImplementation) public { + uint256 currentImplId = 0; + + uint256 newImplId = anotherCloneFactory.approveERC721Implementation(_dummyImplementation); + + address impl = anotherCloneFactory.erc721ImplAddresses(currentImplId); + + assertEq(currentImplId, newImplId); + assertEq(impl, _dummyImplementation); + } + + function test_approveERC721Implementation_nonAdmin(address _nonAdmin, address _dummyImplementation) public { + vm.assume(_nonAdmin != address(this)); + vm.assume(_nonAdmin != address(proxyAdmin)); + + vm.prank(_nonAdmin); + + vm.expectRevert(); + anotherCloneFactory.approveERC721Implementation(_dummyImplementation); + } + + function test_updateERC721Implementation_admin(address _dummyImplementation, address _dummyImplementation2) + public + { + uint256 implId = anotherCloneFactory.approveERC721Implementation(_dummyImplementation); + + address impl = anotherCloneFactory.erc721ImplAddresses(implId); + assertEq(impl, _dummyImplementation); + + anotherCloneFactory.updateERC721Implementation(implId, _dummyImplementation2); + + impl = anotherCloneFactory.erc721ImplAddresses(implId); + assertEq(impl, _dummyImplementation2); + } + + function test_updateERC721Implementation_nonAdmin( + address _nonAdmin, + address _dummyImplementation, + address _dummyImplementation2 + ) public { + vm.assume(_nonAdmin != address(this)); + vm.assume(_nonAdmin != address(proxyAdmin)); + + uint256 implId = anotherCloneFactory.approveERC721Implementation(_dummyImplementation); + + address impl = anotherCloneFactory.erc721ImplAddresses(implId); + assertEq(impl, _dummyImplementation); + + vm.prank(_nonAdmin); + + vm.expectRevert(); + anotherCloneFactory.updateERC721Implementation(implId, _dummyImplementation2); + } + function test_setERC721Implementation_admin() public { ERC721ABLE newErc721Implementation = new ERC721ABLE(); From 55eb985830c086f2ebee972ea7668a9e59b48c87 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 12 Dec 2023 13:35:01 +0100 Subject: [PATCH 65/74] added events in `approveERC721Implementation` & `updateERC721Implementation` --- forge-cache/solidity-files-cache.json | 2 +- src/factory/AnotherCloneFactory.sol | 2 ++ src/libraries/ABEvents.sol | 3 +++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 0a7387e..3f9f8ba 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -1 +1 @@ -{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1680596959844,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1686130554341,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1680596959845,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1680596959845,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1680596959845,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1680596960583,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685431596392,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1680596959867,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685431596392,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685431596392,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685431596392,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1680596959868,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1680596959868,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1680596959868,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1680596959868,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1680596959868,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1680596959868,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1701338065645,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1680596959868,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685431596392,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1680596959868,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685431596393,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1680596959869,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685431596444,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1680596960619,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685431596455,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685431596455,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1680596960628,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685431596455,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685431596455,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596455,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1686297155172,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685431596456,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1680596960629,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1680596960629,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1680596960630,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1680596960630,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1680596960631,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685431596458,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685431596458,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1680596960632,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1680596960633,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685431596459,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1680596960634,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1680596960634,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685431596460,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1680596960634,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685431596460,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685431596461,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685431596461,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685431596461,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685431596462,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1680596960636,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685431596462,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1680596962383,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596555,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1686313924066,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1680596962399,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685431596555,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1680596962400,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685431596559,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1680596962405,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685431596560,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685431596561,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685431596647,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685431596647,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1680596963987,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685431596647,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685431596648,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685431596648,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1680596963987,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1680596963987,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1680596963987,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1680596963988,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1680596963989,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1680596963989,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685431596649,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1680596963992,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1680596963992,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1680596963992,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1693465366216,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870138,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1699523979381,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1699523979381,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1701101671212,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1695374870137,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870137,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1699523979380,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1702370649096,"contentHash":"559c6c819096ca166379a327a22cec6b","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1701101671211,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1700049426046,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649096,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649097,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649097,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649097,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649098,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649098,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649098,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649098,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1693465366217,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1699523979382,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1695374870139,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1702370649099,"contentHash":"c79788f065df67ef9e40262962362990","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1702370649100,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1702370649100,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1698653960245,"contentHash":"fd828f54bf1543d5aafa603c67c38bda","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1702370649101,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1702370649102,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1702370649103,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1702370649103,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1702370649103,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1702370649104,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"01daae19991c3d298a84da11cea6a548","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1702370649105,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1702370649105,"contentHash":"4d08d742c574856408bc4714443bce67","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1702370649106,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1702370649106,"contentHash":"fd6c89ab4678e9b71919fa3b17964721","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1695374870143,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1693465366219,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1693465366220,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1693465366220,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1695374870143,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1693465366220,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1695374870144,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1702370649107,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1702370649107,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1702370649108,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1702377451281,"contentHash":"bee41342f6760fa179590adf1e84d1e2","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1702370649109,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1702370649110,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1702370649110,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1702370649111,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1702370649112,"contentHash":"c9efb686599e96d0f106725bb622c2b2","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1699523979388,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file +{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1680596959844,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1686130554341,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1680596959845,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1680596959845,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1680596959845,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1680596960583,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685431596392,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1680596959867,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685431596392,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685431596392,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685431596392,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1680596959868,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1680596959868,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1680596959868,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1680596959868,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1680596959868,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1680596959868,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1701338065645,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1680596959868,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685431596392,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1680596959868,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685431596393,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1680596959869,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685431596444,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1680596960619,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685431596455,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685431596455,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1680596960628,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685431596455,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685431596455,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596455,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1686297155172,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685431596456,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1680596960629,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1680596960629,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1680596960630,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1680596960630,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1680596960631,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685431596458,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685431596458,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1680596960632,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1680596960633,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685431596459,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1680596960634,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1680596960634,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685431596460,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1680596960634,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685431596460,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685431596461,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685431596461,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685431596461,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685431596462,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1680596960636,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685431596462,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1680596962383,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596555,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1686313924066,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1680596962399,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685431596555,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1680596962400,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685431596559,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1680596962405,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685431596560,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685431596561,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685431596647,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685431596647,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1680596963987,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685431596647,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685431596648,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685431596648,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1680596963987,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1680596963987,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1680596963987,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1680596963988,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1680596963989,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1680596963989,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685431596649,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1680596963992,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1680596963992,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1680596963992,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1693465366216,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870138,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1699523979381,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1699523979381,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1701101671212,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1695374870137,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870137,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1699523979380,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1702370649096,"contentHash":"559c6c819096ca166379a327a22cec6b","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1701101671211,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1700049426046,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649096,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649097,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649097,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649097,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649098,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649098,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649098,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649098,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1693465366217,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1699523979382,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1695374870139,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1702384457164,"contentHash":"ff3cf727aba778ed6bd91876589bce0d","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1702370649100,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1702370649100,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1702384397802,"contentHash":"9afaf557e827e746bf4e6e90c88fbafc","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1702370649101,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1702370649102,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1702370649103,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1702370649103,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1702370649103,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1702370649104,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"01daae19991c3d298a84da11cea6a548","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1702370649105,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1702370649105,"contentHash":"4d08d742c574856408bc4714443bce67","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1702370649106,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1702370649106,"contentHash":"fd6c89ab4678e9b71919fa3b17964721","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1695374870143,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1693465366219,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1693465366220,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1693465366220,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1695374870143,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1693465366220,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1695374870144,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1702370649107,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1702370649107,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1702370649108,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1702377451281,"contentHash":"bee41342f6760fa179590adf1e84d1e2","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1702370649109,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1702370649110,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1702370649110,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1702370649111,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1702370649112,"contentHash":"c9efb686599e96d0f106725bb622c2b2","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1699523979388,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file diff --git a/src/factory/AnotherCloneFactory.sol b/src/factory/AnotherCloneFactory.sol index 3336c70..d93f175 100644 --- a/src/factory/AnotherCloneFactory.sol +++ b/src/factory/AnotherCloneFactory.sol @@ -313,6 +313,7 @@ contract AnotherCloneFactory is AccessControlUpgradeable { { _newImplementationId = erc721ImplAddresses.length; erc721ImplAddresses.push(_newImpl); + emit ABEvents.UpdatedERC721Implementation(_newImplementationId, _newImpl); } /** @@ -328,6 +329,7 @@ contract AnotherCloneFactory is AccessControlUpgradeable { onlyRole(DEFAULT_ADMIN_ROLE) { erc721ImplAddresses[_implementationId] = _newImpl; + emit ABEvents.UpdatedERC721Implementation(_implementationId, _newImpl); } /** diff --git a/src/libraries/ABEvents.sol b/src/libraries/ABEvents.sol index 31c80b4..5b6fba7 100644 --- a/src/libraries/ABEvents.sol +++ b/src/libraries/ABEvents.sol @@ -56,4 +56,7 @@ library ABEvents { /// @dev Event emitted upon publisher fee updates event PublisherFeesUpdated(address publisher, uint256 fee); + + /// @dev Event emitted upon approving or updating an ERC721 implementation within AnotherCloneFactory + event UpdatedERC721Implementation(uint256 implementationId, address implementationAddress); } From fb9063608ffc5a5b5cfdc66dad18a650827d1749 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Mon, 18 Dec 2023 10:56:32 +0100 Subject: [PATCH 66/74] remove unused fct from verifier --- src/utils/ABVerifier.sol | 41 --------------------------------------- src/utils/IABVerifier.sol | 25 ------------------------ 2 files changed, 66 deletions(-) diff --git a/src/utils/ABVerifier.sol b/src/utils/ABVerifier.sol index 191dc9e..5d5d1a2 100644 --- a/src/utils/ABVerifier.sol +++ b/src/utils/ABVerifier.sol @@ -57,18 +57,12 @@ contract ABVerifier is IABVerifier, AccessControlUpgradeable { /// @dev Default signer address address public defaultSigner; - /// @dev KYC signer address - address public kycSigner; - /// @dev Mapping storing the signer address for a given collection mapping(address collection => address signer) private signerPerCollection; /// @dev anotherblock Admin Role bytes32 public constant AB_ADMIN_ROLE = keccak256("AB_ADMIN_ROLE"); - /// @dev current Nonce used to invalidate KYC signature - uint256 currentNonce; - /// @dev Storage gap used for future upgrades (30 * 32 bytes) uint256[30] __gap; @@ -109,22 +103,6 @@ contract ABVerifier is IABVerifier, AccessControlUpgradeable { // / /____> Date: Mon, 18 Dec 2023 11:20:00 +0100 Subject: [PATCH 67/74] updated deploy script --- script/base-goerli/deploy-kyc-upgrade.s.sol | 27 +++++++++++++-------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/script/base-goerli/deploy-kyc-upgrade.s.sol b/script/base-goerli/deploy-kyc-upgrade.s.sol index 88603e1..01b166e 100644 --- a/script/base-goerli/deploy-kyc-upgrade.s.sol +++ b/script/base-goerli/deploy-kyc-upgrade.s.sol @@ -1,6 +1,6 @@ /* -forge script script/base-goerli/deploy-kyc-upgrade.s.sol --rpc-url base-goerli -forge script script/base-goerli/deploy-kyc-upgrade.s.sol:DeployUpgrade --rpc-url base-goerli --broadcast --verify +forge script script/base-goerli/deploy-kyc-upgrade.s.sol --rpc-url base-goerli --sig "run(bool)" true +forge script script/base-goerli/deploy-kyc-upgrade.s.sol --rpc-url base-goerli --sig "run(bool)" false --broadcast --verify */ // SPDX-License-Identifier: MIT @@ -23,8 +23,12 @@ contract DeployKYCUpgrade is Script { ABRoyalty public abRoyalty; ERC721ABLE public erc721LimitedEditionImpl; + ERC721ABOE public erc721OpenEditionImpl; + AnotherCloneFactory public factoryImpl; + ProxyAdmin public proxyAdmin; TransparentUpgradeableProxy public abKycModuleProxy; + address payable private anotherCloneFactoryProxy = payable(0x9BE7E2B13f70f170B63c0379663313EcdB527294); function run(bool isDryRun) external { // Account to deploy from @@ -58,17 +62,20 @@ contract DeployKYCUpgrade is Script { // Deploy Implementation Contracts abRoyalty = new ABRoyalty(); erc721LimitedEditionImpl = new ERC721ABLE(); - new ERC721ABOE(); + erc721OpenEditionImpl = new ERC721ABOE(); + factoryImpl = new AnotherCloneFactory(); - // Set new implementation contracts addresses in AnotherCloneFactory - AnotherCloneFactory(0x9BE7E2B13f70f170B63c0379663313EcdB527294).setERC721Implementation( - address(erc721LimitedEditionImpl) - ); + // proxyAdmin.upgrade(TransparentUpgradeableProxy(anotherCloneFactoryProxy), address(factoryImpl)); + + // // Set new implementation contracts addresses in AnotherCloneFactory + // AnotherCloneFactory(anotherCloneFactoryProxy).approveERC721Implementation(address(erc721LimitedEditionImpl)); + + // AnotherCloneFactory(anotherCloneFactoryProxy).approveERC721Implementation(address(erc721OpenEditionImpl)); - AnotherCloneFactory(0x9BE7E2B13f70f170B63c0379663313EcdB527294).setABRoyaltyImplementation(address(abRoyalty)); + // AnotherCloneFactory(anotherCloneFactoryProxy).setABRoyaltyImplementation(address(abRoyalty)); - // Set new implementation contracts addresses in AnotherCloneFactory - AnotherCloneFactory(0x9BE7E2B13f70f170B63c0379663313EcdB527294).setABKYCModule(address(abKycModuleProxy)); + // // Set new implementation contracts addresses in AnotherCloneFactory + // AnotherCloneFactory(anotherCloneFactoryProxy).setABKYCModule(address(abKycModuleProxy)); vm.stopBroadcast(); } From 790ff5e8297c478d7577b938c4c6830c7992eed9 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Mon, 18 Dec 2023 11:20:28 +0100 Subject: [PATCH 68/74] base-goerli deployment : KYC + ERC20 mint --- .../84531/run-1702894726.json | 137 +++++++ .../84531/run-1702894733.json | 354 ++++++++++++++++++ .../84531/run-1702894749.json | 354 ++++++++++++++++++ .../84531/run-latest.json | 354 ++++++++++++++++++ deployment/84531/ABKYCModule/address | 1 + .../84531/run-1702894726.json | 22 ++ .../84531/run-1702894733.json | 22 ++ .../84531/run-1702894749.json | 22 ++ .../84531/run-latest.json | 22 ++ forge-cache/solidity-files-cache.json | 2 +- 10 files changed, 1289 insertions(+), 1 deletion(-) create mode 100644 broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894726.json create mode 100644 broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894733.json create mode 100644 broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894749.json create mode 100644 broadcast/deploy-kyc-upgrade.s.sol/84531/run-latest.json create mode 100644 forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894726.json create mode 100644 forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894733.json create mode 100644 forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894749.json create mode 100644 forge-cache/deploy-kyc-upgrade.s.sol/84531/run-latest.json diff --git a/broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894726.json b/broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894726.json new file mode 100644 index 0000000..78f4f3c --- /dev/null +++ b/broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894726.json @@ -0,0 +1,137 @@ +{ + "transactions": [ + { + "hash": "0x1d5a0535ad40e6afd71b5ffaba7ec76a7c0c26f7585e91f5a2fb1c37df6833a0", + "transactionType": "CREATE", + "contractName": "ABRoyaltyTestData", + "contractAddress": "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0xf307e", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b610c68806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063627cdcb9116100a2578063ccac2c1311610071578063ccac2c131461022b578063cfc5a0c01461023e578063d547741f14610265578063e83931af14610278578063f2c526bc1461016357600080fd5b8063627cdcb9146101f557806391d14854146101fd578063a217fddf14610210578063c4d66de81461021857600080fd5b80632f2ff15d116100de5780632f2ff15d146101a957806336568abe146101bc578063437a0de9146101cf5780634a96535b146101e257600080fd5b806301ffc9a7146101105780631180b553146101385780631723576414610163578063248a9ca314610178575b600080fd5b61012361011e366004610977565b610289565b60405190151581526020015b60405180910390f35b61014b6101463660046109bd565b6102c0565b6040516001600160a01b03909116815260200161012f565b6101766101713660046109d8565b505050565b005b61019b610186366004610a5b565b60009081526065602052604090206001015490565b60405190815260200161012f565b6101766101b7366004610a74565b6102cb565b6101766101ca366004610a74565b6102f0565b60975461014b906001600160a01b031681565b6101766101f03660046109bd565b610373565b6101766103a1565b61012361020b366004610a74565b6103c2565b61019b600081565b6101766102263660046109bd565b6103ed565b610176610239366004610aa0565b61054b565b61019b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b610176610273366004610a74565b6105a4565b6101766102863660046109bd565b50565b60006001600160e01b03198216637965db0b60e01b14806102ba57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006102ba826105c9565b6000828152606560205260409020600101546102e6816105fb565b6101718383610605565b6001600160a01b03811633146103655760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61036f828261068b565b5050565b600061037e816105fb565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006103ac816105fb565b6099600081546103bb90610ae0565b9091555050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600054610100900460ff161580801561040d5750600054600160ff909116105b806104275750303b158015610427575060005460ff166001145b61048a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161035c565b6000805460ff1916600117905580156104ad576000805461ff0019166101001790555b6001600160a01b0382166104d457604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b0384161790556104f76106f2565b61050260003361075f565b801561036f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e610575816105fb565b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b6000828152606560205260409020600101546105bf816105fb565b610171838361068b565b6097546001600160a01b03828116600090815260986020526040902054918116911680156105f5578091505b50919050565b6102868133610769565b61060f82826103c2565b61036f5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556106473390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61069582826103c2565b1561036f5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600054610100900460ff1661075d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161035c565b565b61036f8282610605565b61077382826103c2565b61036f57610780816107c2565b61078b8360206107d4565b60405160200161079c929190610b1d565b60408051601f198184030181529082905262461bcd60e51b825261035c91600401610b92565b60606102ba6001600160a01b03831660145b606060006107e3836002610bc5565b6107ee906002610bdc565b67ffffffffffffffff81111561080657610806610bef565b6040519080825280601f01601f191660200182016040528015610830576020820181803683370190505b509050600360fc1b8160008151811061084b5761084b610c05565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061087a5761087a610c05565b60200101906001600160f81b031916908160001a905350600061089e846002610bc5565b6108a9906001610bdc565b90505b6001811115610921576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106108dd576108dd610c05565b1a60f81b8282815181106108f3576108f3610c05565b60200101906001600160f81b031916908160001a90535060049490941c9361091a81610c1b565b90506108ac565b5083156109705760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161035c565b9392505050565b60006020828403121561098957600080fd5b81356001600160e01b03198116811461097057600080fd5b80356001600160a01b03811681146109b857600080fd5b919050565b6000602082840312156109cf57600080fd5b610970826109a1565b6000806000604084860312156109ed57600080fd5b6109f6846109a1565b9250602084013567ffffffffffffffff80821115610a1357600080fd5b818601915086601f830112610a2757600080fd5b813581811115610a3657600080fd5b876020828501011115610a4857600080fd5b6020830194508093505050509250925092565b600060208284031215610a6d57600080fd5b5035919050565b60008060408385031215610a8757600080fd5b82359150610a97602084016109a1565b90509250929050565b60008060408385031215610ab357600080fd5b610abc836109a1565b9150610a97602084016109a1565b634e487b7160e01b600052601160045260246000fd5b600060018201610af257610af2610aca565b5060010190565b60005b83811015610b14578181015183820152602001610afc565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351610b55816017850160208801610af9565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351610b86816028840160208801610af9565b01602801949350505050565b6020815260008251806020840152610bb1816040850160208701610af9565b601f01601f19169190910160400192915050565b80820281158282048414176102ba576102ba610aca565b808201808211156102ba576102ba610aca565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081610c2a57610c2a610aca565b50600019019056fea264697066735822122040236fb5a9f8d37d1dbed1e02d2c9cb8d0ce3408a1a8bc4db48fc822e65a260164736f6c63430008130033", + "nonce": "0x4f0", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "function": null, + "arguments": [ + "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "0x305D807d22070DfFF295f5575eCD354f72c2eB76", + "0xc4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0xcdd9f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000a4f3f987bebf7786fdc7147856be776fbd26029b000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb7600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x4f1", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xa247a9ee6a1e0eb7f2695a60e052a8a098a454f0b9648c5e30609d6314766039", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0x67eE62b7C507960Ea2d0e900F391eB1856723a88", + "function": null, + "arguments": [], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x2caa67", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61274b80620000f46000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806378c5195e11610104578063b08805a5116100a2578063d518b7ff11610071578063d518b7ff14610470578063d547741f14610483578063df3d053b14610496578063f8372320146104a957600080fd5b8063b08805a5146103f8578063b81155b51461040b578063c0c53b8b14610448578063cfc5a0c01461045b57600080fd5b806391d14854116100de57806391d14854146103a15780639ab29f2b146103b4578063a217fddf146103c7578063a626f573146103cf57600080fd5b806378c5195e146103685780638c72c54e1461037b5780638fd1101c1461038e57600080fd5b806336568abe1161017c5780634e4345921161014b5780634e434592146103155780634eb6b7f6146103285780636ce10ab61461033b578063754b377c1461034e57600080fd5b806336568abe146102c757806342f1e879146102da578063482a61ff146102ef5780634acdd3581461030257600080fd5b80631c44eb4f116101b85780631c44eb4f1461022f5780631d3b405a14610242578063248a9ca3146102835780632f2ff15d146102b457600080fd5b806301ffc9a7146101df57806319c0fab9146102075780631bfb1bb81461021c575b600080fd5b6101f26101ed366004611c44565b6104b2565b60405190151581526020015b60405180910390f35b61021a610215366004611cb9565b6104e9565b005b61021a61022a366004611d52565b610603565b61021a61023d366004611e0c565b6106b5565b61026b610250366004611e77565b6099602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b6102a6610291366004611e77565b60009081526065602052604090206001015490565b6040519081526020016101fe565b61021a6102c2366004611ea5565b610706565b61021a6102d5366004611ea5565b610730565b6102a66000805160206126f683398151915281565b61021a6102fd366004611ed5565b6107b3565b61021a610310366004611f20565b6107c8565b61021a610323366004611f6f565b6107fc565b60985461026b906001600160a01b031681565b61021a610349366004611fe2565b610867565b610356600181565b60405160ff90911681526020016101fe565b6102a6610376366004611ea5565b6108f9565b60975461026b906001600160a01b031681565b61021a61039c366004612023565b610927565b6101f26103af366004611ea5565b61096b565b6102a66103c2366004611ea5565b610996565b6102a6600081565b61026b6103dd366004611e77565b609a602052600090815260409020546001600160a01b031681565b61021a610406366004612069565b6109cd565b61041e610419366004611e77565b6109ef565b604080516001600160801b03948516815292841660208401529216918101919091526060016101fe565b61021a61045636600461208b565b610a24565b6102a66000805160206126d683398151915281565b61021a61047e3660046120d6565b610b96565b61021a610491366004611ea5565b610c70565b61021a6104a4366004612159565b610c95565b6102a66103e881565b60006001600160e01b03198216637965db0b60e01b14806104e357506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000805160206126d683398151915261050181610d39565b83868380831461052457604051632627b42d60e11b815260040160405180910390fd5b60005b838110156105f65761058289898381811061054457610544612187565b9050602002016020810190610559919061219d565b88888481811061056b5761056b612187565b905060200281019061057d91906121ba565b610d46565b60005b838110156105e5576105d58c8c838181106105a2576105a2612187565b905060200201358b8b858181106105bb576105bb612187565b90506020020160208101906105d0919061219d565b610daf565b6105de81612216565b9050610585565b506105ef81612216565b9050610527565b5050505050505050505050565b6000805160206126d683398151915261061b81610d39565b838280821461063d57604051632627b42d60e11b815260040160405180910390fd5b60005b828110156106aa5761068488888381811061065d5761065d612187565b9050602002016020810190610672919061219d565b87878481811061056b5761056b612187565b61069a898989848181106105bb576105bb612187565b6106a381612216565b9050610640565b505050505050505050565b6106c0338383610d46565b8260005b818110156106fe576106ee8686838181106106e1576106e1612187565b9050602002013533610daf565b6106f781612216565b90506106c4565b505050505050565b60008281526065602052604090206001015461072181610d39565b61072b8383610dd3565b505050565b6001600160a01b03811633146107a55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107af8282610e59565b5050565b6107be338383610d46565b61072b8333610daf565b6000805160206126d68339815191526107e081610d39565b6107eb848484610d46565b6107f58585610daf565b5050505050565b6000805160206126d683398151915261081481610d39565b61081f848484610d46565b8460005b8181101561085d5761084d88888381811061084057610840612187565b9050602002013587610daf565b61085681612216565b9050610823565b5050505050505050565b6000805160206126f683398151915261087f81610d39565b60006108946001600160a01b03851684610ec0565b9050806108b457604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260996020908152604080832080546001600160a01b039687166001600160a01b031991821617909155609a9092529091208054929093169116179055565b6000828152609a602052604081205461091d906001600160a01b0316308585610fe5565b9695505050505050565b6000805160206126f683398151915261093f81610d39565b61095585846109506103e88661222f565b611094565b6107f584846109666103e88661222f565b611145565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000828152609a60205260408120546109ba906001600160a01b0316308585610fe5565b506001600160801b031695945050505050565b6000805160206126f68339815191526109e581610d39565b61072b838361119b565b6000818152609a602052604081205481908190610a16906001600160a01b03163086611225565b919790965090945092505050565b600054610100900460ff1615808015610a445750600054600160ff909116105b80610a5e5750303b158015610a5e575060005460ff166001145b610ac15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161079c565b6000805460ff191660011790558015610ae4576000805461ff0019166101001790555b610aec6112cb565b610af7600085610dd3565b610b02600033610e59565b610b1a6000805160206126f683398151915284610dd3565b609880546001600160a01b038085166001600160a01b03199283161790925560978054928716929091169190911790558015610b90576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000805160206126f6833981519152610bae81610d39565b83828114610bcf57604051632627b42d60e11b815260040160405180910390fd5b60005b818110156106aa57610c1d89888884818110610bf057610bf0612187565b905060200201356103e8888886818110610c0c57610c0c612187565b90506020020135610950919061222f565b610c6088888884818110610c3357610c33612187565b905060200201356103e8888886818110610c4f57610c4f612187565b90506020020135610966919061222f565b610c6981612216565b9050610bd2565b600082815260656020526040902060010154610c8b81610d39565b61072b8383610e59565b6000610ca081610d39565b81610d2f576000848152609a6020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610d09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2d9190612246565b505b610b90848461119b565b610d438133611338565b50565b6098546040516305c8d5d960e21b81526001600160a01b0390911690631723576490610d7a90869086908690600401612263565b60006040518083038186803b158015610d9257600080fd5b505afa158015610da6573d6000803e3d6000fd5b50505050505050565b6000828152609a602052604090205461072b906001600160a01b0316308484611391565b610ddd828261096b565b6107af5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610e153390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610e63828261096b565b156107af5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610ece856114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610f0c57610f0c6122a3565b6040519080825280601f01601f191660200182016040528015610f36576020820181803683370190505b50604051602401610f4993929190612309565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610f9293925090600401612342565b6000604051808303816000875af1158015610fb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd99190810190612389565b50600195945050505050565b6000806000806000610ff689611683565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa15801561105d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110819190612451565b929c919b50995090975095505050505050565b6001600160a01b0383166110a757505050565b6000828152609a60205260408120546110cb906001600160a01b0316308587610fe5565b506001600160801b031692505050600082826110e791906124a1565b11611116576000838152609a6020526040902054611110906001600160a01b03163085876117e8565b50610b90565b6107f5838561112585856124a1565b6000878152609a60205260409020546001600160a01b0316929190611836565b6001600160a01b03831661115857505050565b6000828152609a602052604081205461117c906001600160a01b0316308587610fe5565b506001600160801b0316925050506107f58385848461112591906124b4565b6000828152609a60205260408120546111bf906001600160a01b03163085856118c3565b506000848152609a60205260409020549091506111e6906001600160a01b03168483611968565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910160405180910390a1505050565b600080600080600061123688611683565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b991906124c7565b94509450945094505093509350935093565b600054610100900460ff166113365760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161079c565b565b611342828261096b565b6107af5761134f81611a90565b61135a836020611aa2565b60405160200161136b92919061251d565b60408051601f198184030181529082905262461bcd60e51b825261079c91600401612592565b600080600061139f876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b038111156113df576113df6122a3565b6040519080825280601f01601f191660200182016040528015611409576020820181803683370190505b5060405160240161141e9594939291906125a5565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261146793925090600401612342565b6000604051808303816000875af1158015611486573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114ae9190810190612389565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661158157826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa15801561155a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061157e91906125e5565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156115e5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061160991906125e5565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b03821661166857611668612602565b6001600160a01b03811661167e5761167e612602565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661174857826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611721573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061174591906125e5565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156117ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d091906125e5565b90506001600160a01b03821661166857611668612602565b60008060006117f6876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b038111156113df576113df6122a3565b6000806000611844876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b03811115611884576118846122a3565b6040519080825280601f01601f1916602001820160405280156118ae576020820181803683370190505b5060405160240161141e959493929190612618565b60008060006118d187611683565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa158015611936573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195a919061265f565b925092505094509492505050565b6000806000611976866114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b038111156119b5576119b56122a3565b6040519080825280601f01601f1916602001820160405280156119df576020820181803683370190505b506040516024016119f3949392919061268b565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252611a3c93925090600401612342565b6000604051808303816000875af1158015611a5b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a839190810190612389565b5060019695505050505050565b60606104e36001600160a01b03831660145b60606000611ab183600261222f565b611abc9060026124b4565b6001600160401b03811115611ad357611ad36122a3565b6040519080825280601f01601f191660200182016040528015611afd576020820181803683370190505b509050600360fc1b81600081518110611b1857611b18612187565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611b4757611b47612187565b60200101906001600160f81b031916908160001a9053506000611b6b84600261222f565b611b769060016124b4565b90505b6001811115611bee576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611baa57611baa612187565b1a60f81b828281518110611bc057611bc0612187565b60200101906001600160f81b031916908160001a90535060049490941c93611be7816126be565b9050611b79565b508315611c3d5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161079c565b9392505050565b600060208284031215611c5657600080fd5b81356001600160e01b031981168114611c3d57600080fd5b60008083601f840112611c8057600080fd5b5081356001600160401b03811115611c9757600080fd5b6020830191508360208260051b8501011115611cb257600080fd5b9250929050565b60008060008060008060608789031215611cd257600080fd5b86356001600160401b0380821115611ce957600080fd5b611cf58a838b01611c6e565b90985096506020890135915080821115611d0e57600080fd5b611d1a8a838b01611c6e565b90965094506040890135915080821115611d3357600080fd5b50611d4089828a01611c6e565b979a9699509497509295939492505050565b600080600080600060608688031215611d6a57600080fd5b8535945060208601356001600160401b0380821115611d8857600080fd5b611d9489838a01611c6e565b90965094506040880135915080821115611dad57600080fd5b50611dba88828901611c6e565b969995985093965092949392505050565b60008083601f840112611ddd57600080fd5b5081356001600160401b03811115611df457600080fd5b602083019150836020828501011115611cb257600080fd5b60008060008060408587031215611e2257600080fd5b84356001600160401b0380821115611e3957600080fd5b611e4588838901611c6e565b90965094506020870135915080821115611e5e57600080fd5b50611e6b87828801611dcb565b95989497509550505050565b600060208284031215611e8957600080fd5b5035919050565b6001600160a01b0381168114610d4357600080fd5b60008060408385031215611eb857600080fd5b823591506020830135611eca81611e90565b809150509250929050565b600080600060408486031215611eea57600080fd5b8335925060208401356001600160401b03811115611f0757600080fd5b611f1386828701611dcb565b9497909650939450505050565b60008060008060608587031215611f3657600080fd5b843593506020850135611f4881611e90565b925060408501356001600160401b03811115611f6357600080fd5b611e6b87828801611dcb565b600080600080600060608688031215611f8757600080fd5b85356001600160401b0380821115611f9e57600080fd5b611faa89838a01611c6e565b909750955060208801359150611fbf82611e90565b90935060408701359080821115611fd557600080fd5b50611dba88828901611dcb565b600080600060608486031215611ff757600080fd5b833561200281611e90565b9250602084013561201281611e90565b929592945050506040919091013590565b6000806000806080858703121561203957600080fd5b843561204481611e90565b9350602085013561205481611e90565b93969395505050506040820135916060013590565b6000806040838503121561207c57600080fd5b50508035926020909101359150565b6000806000606084860312156120a057600080fd5b83356120ab81611e90565b925060208401356120bb81611e90565b915060408401356120cb81611e90565b809150509250925092565b600080600080600080608087890312156120ef57600080fd5b86356120fa81611e90565b9550602087013561210a81611e90565b945060408701356001600160401b038082111561212657600080fd5b6121328a838b01611c6e565b90965094506060890135915080821115611d3357600080fd5b8015158114610d4357600080fd5b60008060006060848603121561216e57600080fd5b833592506020840135915060408401356120cb8161214b565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156121af57600080fd5b8135611c3d81611e90565b6000808335601e198436030181126121d157600080fd5b8301803591506001600160401b038211156121eb57600080fd5b602001915036819003821315611cb257600080fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161222857612228612200565b5060010190565b80820281158282048414176104e3576104e3612200565b60006020828403121561225857600080fd5b8151611c3d8161214b565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156122d45781810151838201526020016122bc565b50506000910152565b600081518084526122f58160208601602086016122b9565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090612339908301846122dd565b95945050505050565b6001600160a01b0383168152606060208201819052600090612366908301846122dd565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b60006020828403121561239b57600080fd5b81516001600160401b03808211156123b257600080fd5b818401915084601f8301126123c657600080fd5b8151818111156123d8576123d86122a3565b604051601f8201601f19908116603f01168101908382118183101715612400576124006122a3565b8160405282815287602084870101111561241957600080fd5b61242a8360208301602088016122b9565b979650505050505050565b80516001600160801b038116811461244c57600080fd5b919050565b6000806000806080858703121561246757600080fd5b84516124728161214b565b60208601519094506124838161214b565b925061249160408601612435565b6060959095015193969295505050565b818103818111156104e3576104e3612200565b808201808211156104e3576104e3612200565b600080600080608085870312156124dd57600080fd5b84516124e88161214b565b93506124f660208601612435565b925061250460408601612435565b915061251260608601612435565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516125558160178501602088016122b9565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516125868160288401602088016122b9565b01602801949350505050565b602081526000611c3d60208301846122dd565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061242a908301846122dd565b6000602082840312156125f757600080fd5b8151611c3d81611e90565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061242a908301846122dd565b6000806040838503121561267257600080fd5b8251915061268260208401612435565b90509250929050565b60018060a01b038516815263ffffffff8416602082015282604082015260806060820152600061091d60808301846122dd565b6000816126cd576126cd612200565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca26469706673582212202cf747c17ad27ef3d17cee929f2bd07e1aa1ad70bb10abbafad36fd69d82ff2a64736f6c63430008130033", + "nonce": "0x4f2", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x0b2d706956e4a636da4bd672e0784bcd7645e4c8b9d6d3eac61581d7749558b9", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0xa765c364f57598f4175Cd482694a2934fD408CF9", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x3d17bd", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61364680620000f46000396000f3fe6080604052600436106102465760003560e01c806366748e9811610139578063a1db9782116100b6578063cb22e01b1161007a578063cb22e01b146106e0578063d5abeb01146106f3578063de7ecf8714610709578063e985e9c51461071f578063f2fde38b1461073f578063fe325e961461075f57600080fd5b8063a1db97821461064d578063a22cb4651461066d578063aa10820e1461068d578063b88d4fde146106ad578063c87b56dd146106c057600080fd5b8063715018a6116100fd578063715018a6146105be578063754b377c146105d35780638c72c54e146105fa5780638da5cb5b1461061a57806395d89b411461063857600080fd5b806366748e98146105065780636cc82b841461053e5780636dbdaae61461055e5780636f8b44b01461057e57806370a082311461059e57600080fd5b80632e37eef6116101c7578063493548441161018b57806349354844146104525780634b102262146104725780634c5dffea146104a657806355f804b3146104c65780636352211e146104e657600080fd5b80632e37eef6146103905780632fb3b361146103df5780634128541c146103ff57806342842e0e1461041f578063430ab18f1461043257600080fd5b8063180f1ea31161020e578063180f1ea31461030f57806318160ddd146103245780631c6d76751461034757806323b872dd146103675780632a778c9b1461037a57600080fd5b806301ffc9a71461024b57806306fdde0314610280578063075834cb146102a2578063081812fc146102c4578063095ea7b3146102fc575b600080fd5b34801561025757600080fd5b5061026b610266366004612a1f565b610774565b60405190151581526020015b60405180910390f35b34801561028c57600080fd5b50610295610785565b6040516102779190612a8c565b3480156102ae57600080fd5b506102c26102bd366004612afc565b610820565b005b3480156102d057600080fd5b506102e46102df366004612bcf565b610917565b6040516001600160a01b039091168152602001610277565b6102c261030a366004612be8565b610964565b34801561031b57600080fd5b506102c2610974565b34801561033057600080fd5b50610339610c0b565b604051908152602001610277565b34801561035357600080fd5b506069546102e4906001600160a01b031681565b6102c2610375366004612c14565b610c2b565b34801561038657600080fd5b50610339606a5481565b34801561039c57600080fd5b506103b06103ab366004612bcf565b610e2b565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610277565b3480156103eb57600080fd5b506102c26103fa366004612ce0565b610e74565b34801561040b57600080fd5b506065546102e4906001600160a01b031681565b6102c261042d366004612c14565b611106565b34801561043e57600080fd5b506102c261044d366004612d7b565b611126565b34801561045e57600080fd5b506067546102e4906001600160a01b031681565b34801561047e57600080fd5b506103397f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156104b257600080fd5b506102c26104c1366004612e12565b61116d565b3480156104d257600080fd5b506102c26104e1366004612ea7565b611185565b3480156104f257600080fd5b506102e4610501366004612bcf565b61119a565b34801561051257600080fd5b50610339610521366004612be8565b606e60209081526000928352604080842090915290825290205481565b34801561054a57600080fd5b506066546102e4906001600160a01b031681565b34801561056a57600080fd5b506102c2610579366004612bcf565b6111a5565b34801561058a57600080fd5b506102c2610599366004612bcf565b6111b2565b3480156105aa57600080fd5b506103396105b9366004612ee8565b6111e7565b3480156105ca57600080fd5b506102c261124f565b3480156105df57600080fd5b506105e8600181565b60405160ff9091168152602001610277565b34801561060657600080fd5b506068546102e4906001600160a01b031681565b34801561062657600080fd5b506033546001600160a01b03166102e4565b34801561064457600080fd5b50610295611263565b34801561065957600080fd5b506102c2610668366004612be8565b61129f565b34801561067957600080fd5b506102c2610688366004612f13565b611347565b34801561069957600080fd5b506102c26106a8366004612f4c565b6113c4565b6102c26106bb366004612fc0565b6115b4565b3480156106cc57600080fd5b506102956106db366004612bcf565b6115fe565b6102c26106ee366004612e12565b611759565b3480156106ff57600080fd5b50610339606f5481565b34801561071557600080fd5b50610339606b5481565b34801561072b57600080fd5b5061026b61073a36600461303f565b611995565b34801561074b57600080fd5b506102c261075a366004612ee8565b6119d2565b34801561076b57600080fd5b506102c2611a4b565b600061077f82611c1d565b92915050565b606061078f611c6b565b600201805461079d9061306d565b80601f01602080910402602001604051908101604052809291908181526020018280546107c99061306d565b80156108165780601f106107eb57610100808354040283529160200191610816565b820191906000526020600020905b8154815290600101906020018083116107f957829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061085a5761085a6130a1565b90600052602060002090600602016003015461087691906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b1580156108e357600080fd5b505af11580156108f7573d6000803e3d6000fd5b5050505061090a8b8b8b87878787611c8f565b5050505050505050505050565b600061092282611f40565b61093f576040516333d1c03960e21b815260040160405180910390fd5b610947611c6b565b60009283526006016020525060409020546001600160a01b031690565b61097082826001611f89565b5050565b61097c61203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156109d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fa91906130e4565b90925090506001600160a01b038216610a2657604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a939190613112565b90506000612710610aa484846130cd565b610aae919061312b565b90506000610abc828461314d565b90508015610b5e5760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3c9190613160565b905080610b5c57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c045760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610bbe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be29190613160565b905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610c17611c6b565b60010154610c23611c6b565b540303919050565b6000610c3682612098565b9050836001600160a01b0316816001600160a01b031614610c695760405162a1148160e81b815260040160405180910390fd5b600080610c7584612145565b91509150610c9a8187610c853390565b6001600160a01b039081169116811491141790565b610cc557610ca88633611995565b610cc557604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610cec57604051633a954ecd60e21b815260040160405180910390fd5b610cf9868686600161216d565b8015610d0457600082555b610d0c611c6b565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610d38611c6b565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d6f611c6b565b60008681526004919091016020526040812091909155600160e11b84169003610de55760018401610d9e611c6b565b600082815260049190910160205260408120549003610de357610dbf611c6b565b548114610de35783610dcf611c6b565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610c02565b606d8181548110610e3b57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b6000805160206135f183398151915254610100900460ff16610ea9576000805160206135f18339815191525460ff1615610ead565b303b155b610f245760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b6000805160206135f183398151915254610100900460ff16158015610f60576000805160206135f1833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f805750600054600160ff909116105b80610f9a5750303b158015610f9a575060005460ff166001145b610ffd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610f1b565b6000805460ff191660011790558015611020576000805461ff0019166101001790555b61103983604051806020016040528060008152506121f4565b611041612232565b61104a87612261565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a169290911691909117905580156110df576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610c025750506000805160206135f1833981519152805461ff001916905550505050565b611121838383604051806020016040528060008152506115b4565b505050565b61112e61203e565b606f8890558786111561115457604051632627b42d60e11b815260040160405180910390fd5b611163878787878787876122b3565b5050505050505050565b61117c87878787878787611c8f565b50505050505050565b61118d61203e565b606c6111218284836131c3565b600061077f82612098565b6111ad61203e565b606b55565b6111ba61203e565b6111c26123f6565b8110156111e257604051632627b42d60e11b815260040160405180910390fd5b606f55565b60006001600160a01b038216611210576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611220611c6b565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61125761203e565b6112616000612261565b565b6060606a5460001461129c5761127a606a54612409565b60405160200161128a9190613282565b60405160208183030381529060405290505b90565b6112a761203e565b6069546001600160a01b03908116908316036112d657604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611323573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111219190613160565b80611350611c6b565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113cc61203e565b606d54156113e0576113e0606d60006129ad565b600081815b8181101561157a576000858583818110611401576114016130a1565b905060c0020180360381019061141791906132ac565b9050838160000151108061142f575060208101518151115b1561144d57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506115738161332b565b90506113e5565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6115bf848484610c2b565b6001600160a01b0383163b156115f8576115db8484848461249b565b6115f8576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061160982611f40565b61162657604051632627b42d60e11b815260040160405180910390fd5b6000611630612586565b9050805160000361165257604051806020016040528060008152509150611753565b6040805160018082528183019092526000916020820181803683370190505090508160018351611682919061314d565b81518110611692576116926130a1565b602001015160f81c60f81b816000815181106116b0576116b06130a1565b60200101906001600160f81b031916908160001a905350604051602f60f81b6020820152819060210160405160208183030381529060405280519060200120816040516020016117009190613344565b604051602081830303815290604052805190602001200361174c578261172586612595565b604051602001611736929190613360565b6040516020818303038152906040529350611750565b8293505b50505b50919050565b6117648783836125d9565b61176d86612639565b61178a576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061179f5761179f6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f54909150866118086123f6565b611812919061338f565b1115611831576040516322eb5e9560e21b815260040160405180910390fd5b8060a001516118d0576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611872908b9030908c908b908b906004016133cb565b602060405180830381865afa15801561188f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118b39190613160565b6118d0576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b845290915290205461190490889061338f565b111561192357604051631d66b65960e11b815260040160405180910390fd5b85816040015161193391906130cd565b3414611952576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a84529091528120805488929061198590849061338f565b90915550611163905088876126ea565b600061199f611c6b565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6119da61203e565b6001600160a01b038116611a3f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610f1b565b611a4881612261565b50565b611a5361203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611aad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad191906130e4565b90925090506001600160a01b038216611afd57604051632627b42d60e11b815260040160405180910390fd5b476000612710611b0d84846130cd565b611b17919061312b565b90506000611b25828461314d565b90508015611ba3576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611b7a576040519150601f19603f3d011682016040523d82523d6000602084013e611b7f565b606091505b5050905080611ba157604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c04576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611bf6576040519150601f19603f3d011682016040523d82523d6000602084013e611bfb565b606091505b5050905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611c4e57506380ac58cd60e01b6001600160e01b03198316145b8061077f5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611c9a8783836125d9565b6069546001600160a01b0316611cc357604051632d1f608d60e11b815260040160405180910390fd5b611ccc86612639565b611ce9576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611cfe57611cfe6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f5490915086611d676123f6565b611d71919061338f565b1115611d90576040516322eb5e9560e21b815260040160405180910390fd5b8060a00151611e2f576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611dd1908b9030908c908b908b906004016133cb565b602060405180830381865afa158015611dee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e129190613160565b611e2f576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b8452909152902054611e6390889061338f565b1115611e8257604051631d66b65960e11b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611eab908b906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611eff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f239190613160565b61195257604051635b88974760e11b815260040160405180910390fd5b600081600111158015611f5a5750611f56611c6b565b5482105b801561077f5750600160e01b611f6e611c6b565b60008481526004919091016020526040902054161592915050565b6000611f948361119a565b90508115611fd357336001600160a01b03821614611fd357611fb68133611995565b611fd3576040516367d9dca160e11b815260040160405180910390fd5b83611fdc611c6b565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146112615760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610f1b565b60008160011161212c576120aa611c6b565b600083815260049190910160205260408120549150600160e01b8216900361212c5780600003612127576120dc611c6b565b5482106120fc57604051636f96cda160e11b815260040160405180910390fd5b612104611c6b565b6000199092016000818152600493909301602052604090922054905080156120fc575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000612152611c6b565b60009485526006016020525050604090912080549092909150565b606b54156115f857606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156121e057600080fd5b505af1158015611163573d6000803e3d6000fd5b6000805160206135f183398151915254610100900460ff166122285760405162461bcd60e51b8152600401610f1b9061340a565b6109708282612832565b600054610100900460ff166122595760405162461bcd60e51b8152600401610f1b9061345e565b6112616128a5565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a54156122d4576040516302d1671b60e41b815260040160405180910390fd5b861580156122ea57506001600160a01b03841615155b8061230657506001600160a01b03841615801561230657508615155b1561232457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015612381573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123a59190613112565b606a556001600160a01b038316156123d357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c6123e58284836131c3565b50851561117c5761117c85876126ea565b60006001612402611c6b565b5403919050565b60606000612416836128d5565b60010190506000816001600160401b0381111561243557612435612c55565b6040519080825280601f01601f19166020018201604052801561245f576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461246957509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906124d09033908990889088906004016134a9565b6020604051808303816000875af192505050801561250b575060408051601f3d908101601f19168201909252612508918101906134e6565b60015b612569573d808015612539576040519150601f19603f3d011682016040523d82523d6000602084013e61253e565b606091505b508051600003612561576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461079d9061306d565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a9004806125af5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061260d90869086908690600401613503565b60006040518083038186803b15801561262557600080fd5b505afa15801561117c573d6000803e3d6000fd5b606d54600090821061265e57604051632627b42d60e11b815260040160405180910390fd5b6000606d8381548110612673576126736130a1565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906126e35750428160200151115b9392505050565b60006126f4611c6b565b54905060008290036127195760405163b562e8dd60e01b815260040160405180910390fd5b612726600084838561216d565b68010000000000000001820261273a611c6b565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717612775611c6b565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146127ff57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001016127c7565b508160000361282057604051622e076360e81b815260040160405180910390fd5b80612829611c6b565b55506111219050565b6000805160206135f183398151915254610100900460ff166128665760405162461bcd60e51b8152600401610f1b9061340a565b8161286f611c6b565b6002019061287d9082613531565b5080612887611c6b565b600301906128959082613531565b5060016128a0611c6b565b555050565b600054610100900460ff166128cc5760405162461bcd60e51b8152600401610f1b9061345e565b61126133612261565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106129145772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612940576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061295e57662386f26fc10000830492506010015b6305f5e1008310612976576305f5e100830492506008015b612710831061298a57612710830492506004015b6064831061299c576064830492506002015b600a831061077f5760010192915050565b5080546000825560060290600052602060002090810190611a4891905b80821115612a05576000808255600182018190556002820181905560038201819055600482015560058101805460ff191690556006016129ca565b5090565b6001600160e01b031981168114611a4857600080fd5b600060208284031215612a3157600080fd5b81356126e381612a09565b60005b83811015612a57578181015183820152602001612a3f565b50506000910152565b60008151808452612a78816020860160208601612a3c565b601f01601f19169290920160200192915050565b6020815260006126e36020830184612a60565b6001600160a01b0381168114611a4857600080fd5b60008083601f840112612ac657600080fd5b5081356001600160401b03811115612add57600080fd5b602083019150836020828501011115612af557600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215612b1e57600080fd5b612b288c35612a9f565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff81168114612b5557600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d0135811015612b7e57600080fd5b612b8e8e60e08f01358f01612ab4565b90955093506101008d0135811015612ba557600080fd5b50612bb78d6101008e01358e01612ab4565b81935080925050509295989b509295989b9093969950565b600060208284031215612be157600080fd5b5035919050565b60008060408385031215612bfb57600080fd5b8235612c0681612a9f565b946020939093013593505050565b600080600060608486031215612c2957600080fd5b8335612c3481612a9f565b92506020840135612c4481612a9f565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612c8557612c85612c55565b604051601f8501601f19908116603f01168101908282118183101715612cad57612cad612c55565b81604052809350858152868686011115612cc657600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612cf857600080fd5b8535612d0381612a9f565b94506020860135612d1381612a9f565b93506040860135612d2381612a9f565b92506060860135612d3381612a9f565b915060808601356001600160401b03811115612d4e57600080fd5b8601601f81018813612d5f57600080fd5b612d6e88823560208401612c6b565b9150509295509295909350565b60008060008060008060008060e0898b031215612d9757600080fd5b8835975060208901359650604089013595506060890135612db781612a9f565b94506080890135612dc781612a9f565b935060a0890135612dd781612a9f565b925060c08901356001600160401b03811115612df257600080fd5b612dfe8b828c01612ab4565b999c989b5096995094979396929594505050565b600080600080600080600060a0888a031215612e2d57600080fd5b8735612e3881612a9f565b9650602088013595506040880135945060608801356001600160401b0380821115612e6257600080fd5b612e6e8b838c01612ab4565b909650945060808a0135915080821115612e8757600080fd5b50612e948a828b01612ab4565b989b979a50959850939692959293505050565b60008060208385031215612eba57600080fd5b82356001600160401b03811115612ed057600080fd5b612edc85828601612ab4565b90969095509350505050565b600060208284031215612efa57600080fd5b81356126e381612a9f565b8015158114611a4857600080fd5b60008060408385031215612f2657600080fd5b8235612f3181612a9f565b91506020830135612f4181612f05565b809150509250929050565b60008060208385031215612f5f57600080fd5b82356001600160401b0380821115612f7657600080fd5b818501915085601f830112612f8a57600080fd5b813581811115612f9957600080fd5b86602060c083028501011115612fae57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612fd657600080fd5b8435612fe181612a9f565b93506020850135612ff181612a9f565b92506040850135915060608501356001600160401b0381111561301357600080fd5b8501601f8101871361302457600080fd5b61303387823560208401612c6b565b91505092959194509250565b6000806040838503121561305257600080fd5b823561305d81612a9f565b91506020830135612f4181612a9f565b600181811c9082168061308157607f821691505b60208210810361175357634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761077f5761077f6130b7565b600080604083850312156130f757600080fd5b825161310281612a9f565b6020939093015192949293505050565b60006020828403121561312457600080fd5b5051919050565b60008261314857634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561077f5761077f6130b7565b60006020828403121561317257600080fd5b81516126e381612f05565b601f82111561112157600081815260208120601f850160051c810160208610156131a45750805b601f850160051c820191505b81811015610c02578281556001016131b0565b6001600160401b038311156131da576131da612c55565b6131ee836131e8835461306d565b8361317d565b6000601f841160018114613222576000851561320a5750838201355b600019600387901b1c1916600186901b178355610c04565b600083815260209020601f19861690835b828110156132535786850135825560209485019460019092019101613233565b50868210156132705760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b81526000825161329f816002850160208701612a3c565b9190910160020192915050565b600060c082840312156132be57600080fd5b60405160c081018181106001600160401b03821117156132e0576132e0612c55565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561331f81612f05565b60a08201529392505050565b60006001820161333d5761333d6130b7565b5060010190565b60008251613356818460208701612a3c565b9190910192915050565b60008351613372818460208801612a3c565b835190830190613386818360208801612a3c565b01949350505050565b8082018082111561077f5761077f6130b7565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b03868116825285166020820152604081018490526080606082018190526000906133ff90830184866133a2565b979650505050505050565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906134dc90830184612a60565b9695505050505050565b6000602082840312156134f857600080fd5b81516126e381612a09565b6001600160a01b038416815260406020820181905260009061352890830184866133a2565b95945050505050565b81516001600160401b0381111561354a5761354a612c55565b61355e81613558845461306d565b8461317d565b602080601f831160018114613593576000841561357b5750858301515b600019600386901b1c1916600185901b178555610c02565b600085815260208120601f198616915b828110156135c2578886015182559484019460019091019084016135a3565b50858210156135e05787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220515503e22fdd6aa41a7f1ead0718a036029ff0c2ebd762dd021a3b7635b7249464736f6c63430008130033", + "nonce": "0x4f3", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xd2dd252aa53fa8d07f148b36ad079374acf52e2f2d5a75850d30edf1e22399ae", + "transactionType": "CREATE", + "contractName": "ERC721ABOE", + "contractAddress": "0x12905691B20F5045EC76cC0be411199051206230", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x3b2cf4", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61348780620000f46000396000f3fe6080604052600436106102305760003560e01c806366748e981161012e578063a1db9782116100ab578063cb22e01b1161006f578063cb22e01b146106aa578063de7ecf87146106bd578063e985e9c5146106d3578063f2fde38b146106f3578063fe325e961461071357600080fd5b8063a1db978214610617578063a22cb46514610637578063aa10820e14610657578063b88d4fde14610677578063c87b56dd1461068a57600080fd5b8063754b377c116100f2578063754b377c1461057d5780638c72c54e146105a45780638d6d31e3146105c45780638da5cb5b146105e457806395d89b411461060257600080fd5b806366748e98146104d05780636cc82b84146105085780636dbdaae61461052857806370a0823114610548578063715018a61461056857600080fd5b80632a778c9b116101bc5780634935484411610180578063493548441461041c5780634b1022621461043c5780634c5dffea1461047057806355f804b3146104905780636352211e146104b057600080fd5b80632a778c9b146103645780632e37eef61461037a5780632fb3b361146103c95780634128541c146103e957806342842e0e1461040957600080fd5b8063095ea7b311610203578063095ea7b3146102e6578063180f1ea3146102f957806318160ddd1461030e5780631c6d76751461033157806323b872dd1461035157600080fd5b806301ffc9a71461023557806306fdde031461026a578063075834cb1461028c578063081812fc146102ae575b600080fd5b34801561024157600080fd5b5061025561025036600461287c565b610728565b60405190151581526020015b60405180910390f35b34801561027657600080fd5b5061027f610739565b60405161026191906128e9565b34801561029857600080fd5b506102ac6102a7366004612959565b6107d4565b005b3480156102ba57600080fd5b506102ce6102c9366004612a2c565b6108cb565b6040516001600160a01b039091168152602001610261565b6102ac6102f4366004612a45565b610918565b34801561030557600080fd5b506102ac610928565b34801561031a57600080fd5b50610323610bbf565b604051908152602001610261565b34801561033d57600080fd5b506069546102ce906001600160a01b031681565b6102ac61035f366004612a71565b610bdf565b34801561037057600080fd5b50610323606a5481565b34801561038657600080fd5b5061039a610395366004612a2c565b610ddf565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610261565b3480156103d557600080fd5b506102ac6103e4366004612b3d565b610e28565b3480156103f557600080fd5b506065546102ce906001600160a01b031681565b6102ac610417366004612a71565b6110ba565b34801561042857600080fd5b506067546102ce906001600160a01b031681565b34801561044857600080fd5b506103237fdcfc50123fc6ea3c803b5b1b4cbbc9ce5b81f13451fd3124e43ef593fd840d1981565b34801561047c57600080fd5b506102ac61048b366004612bd8565b6110da565b34801561049c57600080fd5b506102ac6104ab366004612c6d565b6110f2565b3480156104bc57600080fd5b506102ce6104cb366004612a2c565b611107565b3480156104dc57600080fd5b506103236104eb366004612a45565b606e60209081526000928352604080842090915290825290205481565b34801561051457600080fd5b506066546102ce906001600160a01b031681565b34801561053457600080fd5b506102ac610543366004612a2c565b611112565b34801561055457600080fd5b50610323610563366004612cae565b61111f565b34801561057457600080fd5b506102ac611187565b34801561058957600080fd5b50610592600181565b60405160ff9091168152602001610261565b3480156105b057600080fd5b506068546102ce906001600160a01b031681565b3480156105d057600080fd5b506102ac6105df366004612ccb565b61119b565b3480156105f057600080fd5b506033546001600160a01b03166102ce565b34801561060e57600080fd5b5061027f6111b2565b34801561062357600080fd5b506102ac610632366004612a45565b6111ee565b34801561064357600080fd5b506102ac610652366004612d54565b611296565b34801561066357600080fd5b506102ac610672366004612d8d565b611313565b6102ac610685366004612e01565b611503565b34801561069657600080fd5b5061027f6106a5366004612a2c565b61154d565b6102ac6106b8366004612bd8565b6116a8565b3480156106c957600080fd5b50610323606b5481565b3480156106df57600080fd5b506102556106ee366004612e80565b61184d565b3480156106ff57600080fd5b506102ac61070e366004612cae565b61188a565b34801561071f57600080fd5b506102ac611903565b600061073382611ad5565b92915050565b6060610743611b23565b600201805461075190612eae565b80601f016020809104026020016040519081016040528092919081815260200182805461077d90612eae565b80156107ca5780601f1061079f576101008083540402835291602001916107ca565b820191906000526020600020905b8154815290600101906020018083116107ad57829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061080e5761080e612ee2565b90600052602060002090600602016003015461082a9190612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b15801561089757600080fd5b505af11580156108ab573d6000803e3d6000fd5b505050506108be8b8b8b87878787611b47565b5050505050505050505050565b60006108d682611db0565b6108f3576040516333d1c03960e21b815260040160405180910390fd5b6108fb611b23565b60009283526006016020525060409020546001600160a01b031690565b61092482826001611df9565b5050565b610930611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa15801561098a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ae9190612f25565b90925090506001600160a01b0382166109da57604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a479190612f53565b90506000612710610a588484612f0e565b610a629190612f6c565b90506000610a708284612f8e565b90508015610b125760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610acc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af09190612fa1565b905080610b1057604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb85760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b969190612fa1565b905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610bcb611b23565b60010154610bd7611b23565b540303919050565b6000610bea82611f08565b9050836001600160a01b0316816001600160a01b031614610c1d5760405162a1148160e81b815260040160405180910390fd5b600080610c2984611fb5565b91509150610c4e8187610c393390565b6001600160a01b039081169116811491141790565b610c7957610c5c863361184d565b610c7957604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610ca057604051633a954ecd60e21b815260040160405180910390fd5b610cad8686866001611fdd565b8015610cb857600082555b610cc0611b23565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610cec611b23565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d23611b23565b60008681526004919091016020526040812091909155600160e11b84169003610d995760018401610d52611b23565b600082815260049190910160205260408120549003610d9757610d73611b23565b548114610d975783610d83611b23565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610bb6565b606d8181548110610def57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b60008051602061343283398151915254610100900460ff16610e5d576000805160206134328339815191525460ff1615610e61565b303b155b610ed85760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b60008051602061343283398151915254610100900460ff16158015610f1457600080516020613432833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f345750600054600160ff909116105b80610f4e5750303b158015610f4e575060005460ff166001145b610fb15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610ecf565b6000805460ff191660011790558015610fd4576000805461ff0019166101001790555b610fed8360405180602001604052806000815250612064565b610ff56120a2565b610ffe876120d1565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a16929091169190911790558015611093576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610bb6575050600080516020613432833981519152805461ff001916905550505050565b6110d583838360405180602001604052806000815250611503565b505050565b6110e987878787878787611b47565b50505050505050565b6110fa611eae565b606c6110d5828483613004565b600061073382611f08565b61111a611eae565b606b55565b60006001600160a01b038216611148576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611158611b23565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61118f611eae565b61119960006120d1565b565b6111a3611eae565b6110e987878787878787612123565b6060606a546000146111eb576111c9606a54612266565b6040516020016111d991906130c3565b60405160208183030381529060405290505b90565b6111f6611eae565b6069546001600160a01b039081169083160361122557604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611272573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d59190612fa1565b8061129f611b23565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61131b611eae565b606d541561132f5761132f606d600061280a565b600081815b818110156114c957600085858381811061135057611350612ee2565b905060c0020180360381019061136691906130ed565b9050838160000151108061137e575060208101518151115b1561139c57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506114c28161316c565b9050611334565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b61150e848484610bdf565b6001600160a01b0383163b156115475761152a848484846122f8565b611547576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061155882611db0565b61157557604051632627b42d60e11b815260040160405180910390fd5b600061157f6123e3565b905080516000036115a1576040518060200160405280600081525091506116a2565b60408051600180825281830190925260009160208201818036833701905050905081600183516115d19190612f8e565b815181106115e1576115e1612ee2565b602001015160f81c60f81b816000815181106115ff576115ff612ee2565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161164f9190613185565b604051602081830303815290604052805190602001200361169b5782611674866123f2565b6040516020016116859291906131a1565b604051602081830303815290604052935061169f565b8293505b50505b50919050565b606a546000036116cb576040516316812a5360e11b815260040160405180910390fd5b6116d6878383612436565b6116df86612496565b6116fc576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061171157611711612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820181905290915061180a576066546040516332f1944960e21b81526001600160a01b039091169063cbc65124906117ac908b9030908c908b908b906004016131f9565b602060405180830381865afa1580156117c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ed9190612fa1565b61180a576040516352c973a760e01b815260040160405180910390fd5b85816040015161181a9190612f0e565b3414611839576040516318f4198360e21b815260040160405180910390fd5b6118438887612547565b5050505050505050565b6000611857611b23565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b611892611eae565b6001600160a01b0381166118f75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610ecf565b611900816120d1565b50565b61190b611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611965573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119899190612f25565b90925090506001600160a01b0382166119b557604051632627b42d60e11b815260040160405180910390fd5b4760006127106119c58484612f0e565b6119cf9190612f6c565b905060006119dd8284612f8e565b90508015611a5b576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611a32576040519150601f19603f3d011682016040523d82523d6000602084013e611a37565b606091505b5050905080611a5957604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb8576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611aae576040519150601f19603f3d011682016040523d82523d6000602084013e611ab3565b606091505b5050905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611b0657506380ac58cd60e01b6001600160e01b03198316145b806107335750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611b52878383612436565b6069546001600160a01b0316611b7b57604051632d1f608d60e11b815260040160405180910390fd5b611b8486612496565b611ba1576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611bb657611bb6612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a08201819052909150611caf576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611c51908b9030908c908b908b906004016131f9565b602060405180830381865afa158015611c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c929190612fa1565b611caf576040516352c973a760e01b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611cd8908b90612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611d2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d509190612fa1565b611d6d57604051635b88974760e11b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a845290915281208054889290611da0908490613238565b9091555061184390508887612547565b600081600111158015611dca5750611dc6611b23565b5482105b80156107335750600160e01b611dde611b23565b60008481526004919091016020526040902054161592915050565b6000611e0483611107565b90508115611e4357336001600160a01b03821614611e4357611e26813361184d565b611e43576040516367d9dca160e11b815260040160405180910390fd5b83611e4c611b23565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146111995760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610ecf565b600081600111611f9c57611f1a611b23565b600083815260049190910160205260408120549150600160e01b82169003611f9c5780600003611f9757611f4c611b23565b548210611f6c57604051636f96cda160e11b815260040160405180910390fd5b611f74611b23565b600019909201600081815260049390930160205260409092205490508015611f6c575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611fc2611b23565b60009485526006016020525050604090912080549092909150565b606b541561154757606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b15801561205057600080fd5b505af1158015611843573d6000803e3d6000fd5b60008051602061343283398151915254610100900460ff166120985760405162461bcd60e51b8152600401610ecf9061324b565b610924828261268f565b600054610100900460ff166120c95760405162461bcd60e51b8152600401610ecf9061329f565b611199612702565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a5415612144576040516302d1671b60e41b815260040160405180910390fd5b8615801561215a57506001600160a01b03841615155b8061217657506001600160a01b03841615801561217657508615155b1561219457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af11580156121f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122159190612f53565b606a556001600160a01b0383161561224357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c612255828483613004565b5085156110e9576110e98587612547565b6060600061227383612732565b60010190506000816001600160401b0381111561229257612292612ab2565b6040519080825280601f01601f1916602001820160405280156122bc576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846122c657509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a029061232d9033908990889088906004016132ea565b6020604051808303816000875af1925050508015612368575060408051601f3d908101601f1916820190925261236591810190613327565b60015b6123c6573d808015612396576040519150601f19603f3d011682016040523d82523d6000602084013e61239b565b606091505b5080516000036123be576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461075190612eae565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a90048061240c5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061246a90869086908690600401613344565b60006040518083038186803b15801561248257600080fd5b505afa1580156110e9573d6000803e3d6000fd5b606d5460009082106124bb57604051632627b42d60e11b815260040160405180910390fd5b6000606d83815481106124d0576124d0612ee2565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906125405750428160200151115b9392505050565b6000612551611b23565b54905060008290036125765760405163b562e8dd60e01b815260040160405180910390fd5b6125836000848385611fdd565b680100000000000000018202612597611b23565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b17176125d2611b23565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b81811461265c57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101612624565b508160000361267d57604051622e076360e81b815260040160405180910390fd5b80612686611b23565b55506110d59050565b60008051602061343283398151915254610100900460ff166126c35760405162461bcd60e51b8152600401610ecf9061324b565b816126cc611b23565b600201906126da9082613372565b50806126e4611b23565b600301906126f29082613372565b5060016126fd611b23565b555050565b600054610100900460ff166127295760405162461bcd60e51b8152600401610ecf9061329f565b611199336120d1565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106127715772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061279d576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106127bb57662386f26fc10000830492506010015b6305f5e10083106127d3576305f5e100830492506008015b61271083106127e757612710830492506004015b606483106127f9576064830492506002015b600a83106107335760010192915050565b508054600082556006029060005260206000209081019061190091905b80821115612862576000808255600182018190556002820181905560038201819055600482015560058101805460ff19169055600601612827565b5090565b6001600160e01b03198116811461190057600080fd5b60006020828403121561288e57600080fd5b813561254081612866565b60005b838110156128b457818101518382015260200161289c565b50506000910152565b600081518084526128d5816020860160208601612899565b601f01601f19169290920160200192915050565b60208152600061254060208301846128bd565b6001600160a01b038116811461190057600080fd5b60008083601f84011261292357600080fd5b5081356001600160401b0381111561293a57600080fd5b60208301915083602082850101111561295257600080fd5b9250929050565b60008060008060008060008060008060006101208c8e03121561297b57600080fd5b6129858c356128fc565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff811681146129b257600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d01358110156129db57600080fd5b6129eb8e60e08f01358f01612911565b90955093506101008d0135811015612a0257600080fd5b50612a148d6101008e01358e01612911565b81935080925050509295989b509295989b9093969950565b600060208284031215612a3e57600080fd5b5035919050565b60008060408385031215612a5857600080fd5b8235612a63816128fc565b946020939093013593505050565b600080600060608486031215612a8657600080fd5b8335612a91816128fc565b92506020840135612aa1816128fc565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612ae257612ae2612ab2565b604051601f8501601f19908116603f01168101908282118183101715612b0a57612b0a612ab2565b81604052809350858152868686011115612b2357600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612b5557600080fd5b8535612b60816128fc565b94506020860135612b70816128fc565b93506040860135612b80816128fc565b92506060860135612b90816128fc565b915060808601356001600160401b03811115612bab57600080fd5b8601601f81018813612bbc57600080fd5b612bcb88823560208401612ac8565b9150509295509295909350565b600080600080600080600060a0888a031215612bf357600080fd5b8735612bfe816128fc565b9650602088013595506040880135945060608801356001600160401b0380821115612c2857600080fd5b612c348b838c01612911565b909650945060808a0135915080821115612c4d57600080fd5b50612c5a8a828b01612911565b989b979a50959850939692959293505050565b60008060208385031215612c8057600080fd5b82356001600160401b03811115612c9657600080fd5b612ca285828601612911565b90969095509350505050565b600060208284031215612cc057600080fd5b8135612540816128fc565b600080600080600080600060c0888a031215612ce657600080fd5b87359650602088013595506040880135612cff816128fc565b94506060880135612d0f816128fc565b93506080880135612d1f816128fc565b925060a08801356001600160401b03811115612d3a57600080fd5b612c5a8a828b01612911565b801515811461190057600080fd5b60008060408385031215612d6757600080fd5b8235612d72816128fc565b91506020830135612d8281612d46565b809150509250929050565b60008060208385031215612da057600080fd5b82356001600160401b0380821115612db757600080fd5b818501915085601f830112612dcb57600080fd5b813581811115612dda57600080fd5b86602060c083028501011115612def57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612e1757600080fd5b8435612e22816128fc565b93506020850135612e32816128fc565b92506040850135915060608501356001600160401b03811115612e5457600080fd5b8501601f81018713612e6557600080fd5b612e7487823560208401612ac8565b91505092959194509250565b60008060408385031215612e9357600080fd5b8235612e9e816128fc565b91506020830135612d82816128fc565b600181811c90821680612ec257607f821691505b6020821081036116a257634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761073357610733612ef8565b60008060408385031215612f3857600080fd5b8251612f43816128fc565b6020939093015192949293505050565b600060208284031215612f6557600080fd5b5051919050565b600082612f8957634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561073357610733612ef8565b600060208284031215612fb357600080fd5b815161254081612d46565b601f8211156110d557600081815260208120601f850160051c81016020861015612fe55750805b601f850160051c820191505b81811015610bb657828155600101612ff1565b6001600160401b0383111561301b5761301b612ab2565b61302f836130298354612eae565b83612fbe565b6000601f841160018114613063576000851561304b5750838201355b600019600387901b1c1916600186901b178355610bb8565b600083815260209020601f19861690835b828110156130945786850135825560209485019460019092019101613074565b50868210156130b15760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b8152600082516130e0816002850160208701612899565b9190910160020192915050565b600060c082840312156130ff57600080fd5b60405160c081018181106001600160401b038211171561312157613121612ab2565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561316081612d46565b60a08201529392505050565b60006001820161317e5761317e612ef8565b5060010190565b60008251613197818460208701612899565b9190910192915050565b600083516131b3818460208801612899565b8351908301906131c7818360208801612899565b01949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b038681168252851660208201526040810184905260806060820181905260009061322d90830184866131d0565b979650505050505050565b8082018082111561073357610733612ef8565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061331d908301846128bd565b9695505050505050565b60006020828403121561333957600080fd5b815161254081612866565b6001600160a01b038416815260406020820181905260009061336990830184866131d0565b95945050505050565b81516001600160401b0381111561338b5761338b612ab2565b61339f816133998454612eae565b84612fbe565b602080601f8311600181146133d457600084156133bc5750858301515b600019600386901b1c1916600185901b178555610bb6565b600085815260208120601f198616915b82811015613403578886015182559484019460019091019084016133e4565b50858210156134215787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa26469706673582212203aabe44c2c1beaefd8e913364be7982fe9ebedd320dbc00c62dcd64b800e7bbd64736f6c63430008130033", + "nonce": "0x4f4", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x2644ab5f1ef6fb1b5f01818885f0ee539409db27dad3686f64a81e351fed16b5", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0x7A700EeF6Abf340DF822202730ce1CcC807B575e", + "function": null, + "arguments": [], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x1f76b5", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611b41806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106102115760003560e01c80637d2405bb11610125578063b7dd8d20116100ad578063d547741f1161007c578063d547741f14610494578063d57f966b146104a7578063d8f4b6fd146104b0578063f339b08e146104c5578063fdbda0ec146104d857600080fd5b8063b7dd8d2014610446578063ba4f11c914610459578063bdd2fe781461046c578063cfc5a0c01461047f57600080fd5b80638e837abf116100f45780638e837abf146103f257806391d148541461040557806398eaa0c0146104185780639f1fb80d1461042b578063a217fddf1461043e57600080fd5b80637d2405bb146103a6578063832ca2f5146103b957806385be1c15146103cc5780638d058ac8146103df57600080fd5b806336568abe116101a85780634eb6b7f6116101775780634eb6b7f614610347578063641254bd1461035a578063678213491461036d5780636b7e3949146103805780636cc82b841461039357600080fd5b806336568abe146102fb5780634128541c1461030e57806347fcac3b146103215780634c7dfac31461033457600080fd5b80631ce6e444116101e45780631ce6e444146102915780631e5b3684146102a4578063248a9ca3146102b75780632f2ff15d146102e857600080fd5b806301ffc9a7146102165780631459457a1461023e57806318c25d8a146102535780631c8518c214610266575b600080fd5b61022961022436600461161d565b61050b565b60405190151581526020015b60405180910390f35b61025161024c36600461165e565b610542565b005b6102516102613660046116c3565b6106c3565b609b54610279906001600160a01b031681565b6040516001600160a01b039091168152602001610235565b609a54610279906001600160a01b031681565b6102516102b23660046116ed565b61083d565b6102da6102c53660046116ed565b60009081526065602052604090206001015490565b604051908152602001610235565b6102516102f6366004611706565b6108ef565b610251610309366004611706565b610914565b609854610279906001600160a01b031681565b61027961032f3660046116c3565b610992565b610229610342366004611732565b6109a6565b609e54610279906001600160a01b031681565b610251610368366004611732565b6109c0565b61025161037b36600461174d565b6109ee565b61025161038e366004611732565b610ad6565b609954610279906001600160a01b031681565b6102516103b4366004611732565b610b06565b6102516103c7366004611732565b610b34565b6102516103da366004611706565b610b62565b6102796103ed3660046116ed565b610be8565b610251610400366004611732565b610c02565b610229610413366004611706565b610c30565b610279610426366004611789565b610c5b565b61025161043936600461184e565b610c8f565b6102da600081565b6102516104543660046118b4565b610dc0565b6102da610467366004611732565b610e94565b609c54610279906001600160a01b031681565b6102da600080516020611acc83398151915281565b6102516104a2366004611706565b610f32565b6102da609d5481565b6102da600080516020611aec83398151915281565b6102796104d33660046116ed565b610f57565b6104eb6104e63660046116ed565b610f81565b604080516001600160a01b03938416815292909116602083015201610235565b60006001600160e01b03198216637965db0b60e01b148061053c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156105625750600054600160ff909116105b8061057c5750303b15801561057c575060005460ff166001145b6105e45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610607576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d5561066a610fba565b610675600033611027565b80156106bb576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b600080516020611acc8339815191526106db81611031565b6127108211156106fe57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661072557604051632627b42d60e11b815260040160405180910390fd5b609c5460009061073d906001600160a01b031661103e565b609854609e5460405163c0c53b8b60e01b81526001600160a01b0388811660048301529283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561079957600080fd5b505af11580156107ad573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b9199150606401600060405180830381600087803b15801561080757600080fd5b505af115801561081b573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856110d8565b50505050565b600080516020611aec83398151915261085581611031565b609b5460009061086e906001600160a01b03168461115e565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b1580156108c857600080fd5b505af11580156108dc573d6000803e3d6000fd5b505050506108ea81336111fb565b505050565b60008281526065602052604090206001015461090a81611031565b6108ea83836110d8565b6001600160a01b03811633146109845760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016105db565b61098e8282611353565b5050565b600061099f8383306113ba565b9392505050565b600061053c600080516020611aec83398151915283610c30565b60006109cb81611031565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b600080516020611acc833981519152610a0681611031565b612710821115610a2957604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b038416610a5057604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b91990606401600060405180830381600087803b158015610aa657600080fd5b505af1158015610aba573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856108ef565b600080516020611acc833981519152610aee81611031565b61098e600080516020611aec83398151915283610f32565b6000610b1181611031565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b3f81611031565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b6d81611031565b81609f8481548110610b8157610b81611904565b60009182526020918290200180546001600160a01b0319166001600160a01b0393841617905560408051868152928516918301919091527f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a1505050565b609b5460009061053c906001600160a01b031683306113ba565b6000610c0d81611031565b50609e80546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600061099f609f8481548110610c7357610c73611904565b6000918252602090912001546001600160a01b031683306113ba565b600080516020611acc833981519152610ca781611031565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610cf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d15919061191a565b610d3257604051634f3bd42760e01b815260040160405180910390fd5b6000610d3e868461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610d84948c9491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610d9e57600080fd5b505af1158015610db2573d6000803e3d6000fd5b505050506106bb81866111fb565b600080516020611aec833981519152610dd881611031565b6000610e0b609f8681548110610df057610df0611904565b6000918252602090912001546001600160a01b03168461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610e5194339491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610e6b57600080fd5b505af1158015610e7f573d6000803e3d6000fd5b50505050610e8d81336111fb565b5050505050565b600080610ea081611031565b609f80546001810182556000919091527f0bc14066c33013fe88f66e314e4cf150b0b2d4d6451a1a51dbbd1c27cd11de28810180546001600160a01b0319166001600160a01b0386169081179091556040805183815260208101929092529193507f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a150919050565b600082815260656020526040902060010154610f4d81611031565b6108ea8383611353565b609f8181548110610f6757600080fd5b6000918252602090912001546001600160a01b0316905081565b60978181548110610f9157600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff166110255760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016105db565b565b61098e82826110d8565b61103b8133611416565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b0381166110d35760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b60448201526064016105db565b919050565b6110e28282610c30565b61098e5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561111a3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b03811661053c5760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c656400000000000000000060448201526064016105db565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c906112d19085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b1580156112eb57600080fd5b505af11580156112ff573d6000803e3d6000fd5b50505050609d60008154611312906119e9565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b61135d8282610c30565b1561098e5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6114208282610c30565b61098e5761142d8161146f565b611438836020611481565b604051602001611449929190611a02565b60408051601f198184030181529082905262461bcd60e51b82526105db91600401611a77565b606061053c6001600160a01b03831660145b60606000611490836002611a8a565b61149b906002611aa1565b67ffffffffffffffff8111156114b3576114b36117ab565b6040519080825280601f01601f1916602001820160405280156114dd576020820181803683370190505b509050600360fc1b816000815181106114f8576114f8611904565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061152757611527611904565b60200101906001600160f81b031916908160001a905350600061154b846002611a8a565b611556906001611aa1565b90505b60018111156115ce576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061158a5761158a611904565b1a60f81b8282815181106115a0576115a0611904565b60200101906001600160f81b031916908160001a90535060049490941c936115c781611ab4565b9050611559565b50831561099f5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016105db565b60006020828403121561162f57600080fd5b81356001600160e01b03198116811461099f57600080fd5b80356001600160a01b03811681146110d357600080fd5b600080600080600060a0868803121561167657600080fd5b61167f86611647565b945061168d60208701611647565b935061169b60408701611647565b92506116a960608701611647565b91506116b760808701611647565b90509295509295909350565b600080604083850312156116d657600080fd5b6116df83611647565b946020939093013593505050565b6000602082840312156116ff57600080fd5b5035919050565b6000806040838503121561171957600080fd5b8235915061172960208401611647565b90509250929050565b60006020828403121561174457600080fd5b61099f82611647565b60008060006060848603121561176257600080fd5b61176b84611647565b925061177960208501611647565b9150604084013590509250925092565b6000806040838503121561179c57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126117d257600080fd5b813567ffffffffffffffff808211156117ed576117ed6117ab565b604051601f8301601f19908116603f01168101908282118183101715611815576118156117ab565b8160405283815286602085880101111561182e57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561186457600080fd5b61186d85611647565b935061187b60208601611647565b9250604085013567ffffffffffffffff81111561189757600080fd5b6118a3878288016117c1565b949793965093946060013593505050565b6000806000606084860312156118c957600080fd5b83359250602084013567ffffffffffffffff8111156118e757600080fd5b6118f3868287016117c1565b925050604084013590509250925092565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561192c57600080fd5b8151801515811461099f57600080fd5b60005b8381101561195757818101518382015260200161193f565b50506000910152565b6000815180845261197881602086016020860161193c565b601f01601f19169290920160200192915050565b6001600160a01b038681168252858116602083015284811660408301528316606082015260a0608082018190526000906119c890830184611960565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016119fb576119fb6119d3565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611a3a81601785016020880161193c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611a6b81602884016020880161193c565b01602801949350505050565b60208152600061099f6020830184611960565b808202811582820484141761053c5761053c6119d3565b8082018082111561053c5761053c6119d3565b600081611ac357611ac36119d3565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220bf7faf033458943f1f81d983fa6efeed9fc4cf72c12acec8503359cc4e9c8f6864736f6c63430008130033", + "nonce": "0x4f5", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [], + "libraries": [], + "pending": [ + "0x1d5a0535ad40e6afd71b5ffaba7ec76a7c0c26f7585e91f5a2fb1c37df6833a0", + "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "0xa247a9ee6a1e0eb7f2695a60e052a8a098a454f0b9648c5e30609d6314766039", + "0x0b2d706956e4a636da4bd672e0784bcd7645e4c8b9d6d3eac61581d7749558b9", + "0xd2dd252aa53fa8d07f148b36ad079374acf52e2f2d5a75850d30edf1e22399ae", + "0x2644ab5f1ef6fb1b5f01818885f0ee539409db27dad3686f64a81e351fed16b5" + ], + "returns": {}, + "timestamp": 1702894726, + "chain": 84531, + "multi": false, + "commit": "fb90636" +} \ No newline at end of file diff --git a/broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894733.json b/broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894733.json new file mode 100644 index 0000000..44b9bdb --- /dev/null +++ b/broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894733.json @@ -0,0 +1,354 @@ +{ + "transactions": [ + { + "hash": "0x1d5a0535ad40e6afd71b5ffaba7ec76a7c0c26f7585e91f5a2fb1c37df6833a0", + "transactionType": "CREATE", + "contractName": "ABRoyaltyTestData", + "contractAddress": "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0xf307e", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b610c68806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063627cdcb9116100a2578063ccac2c1311610071578063ccac2c131461022b578063cfc5a0c01461023e578063d547741f14610265578063e83931af14610278578063f2c526bc1461016357600080fd5b8063627cdcb9146101f557806391d14854146101fd578063a217fddf14610210578063c4d66de81461021857600080fd5b80632f2ff15d116100de5780632f2ff15d146101a957806336568abe146101bc578063437a0de9146101cf5780634a96535b146101e257600080fd5b806301ffc9a7146101105780631180b553146101385780631723576414610163578063248a9ca314610178575b600080fd5b61012361011e366004610977565b610289565b60405190151581526020015b60405180910390f35b61014b6101463660046109bd565b6102c0565b6040516001600160a01b03909116815260200161012f565b6101766101713660046109d8565b505050565b005b61019b610186366004610a5b565b60009081526065602052604090206001015490565b60405190815260200161012f565b6101766101b7366004610a74565b6102cb565b6101766101ca366004610a74565b6102f0565b60975461014b906001600160a01b031681565b6101766101f03660046109bd565b610373565b6101766103a1565b61012361020b366004610a74565b6103c2565b61019b600081565b6101766102263660046109bd565b6103ed565b610176610239366004610aa0565b61054b565b61019b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b610176610273366004610a74565b6105a4565b6101766102863660046109bd565b50565b60006001600160e01b03198216637965db0b60e01b14806102ba57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006102ba826105c9565b6000828152606560205260409020600101546102e6816105fb565b6101718383610605565b6001600160a01b03811633146103655760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61036f828261068b565b5050565b600061037e816105fb565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006103ac816105fb565b6099600081546103bb90610ae0565b9091555050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600054610100900460ff161580801561040d5750600054600160ff909116105b806104275750303b158015610427575060005460ff166001145b61048a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161035c565b6000805460ff1916600117905580156104ad576000805461ff0019166101001790555b6001600160a01b0382166104d457604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b0384161790556104f76106f2565b61050260003361075f565b801561036f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e610575816105fb565b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b6000828152606560205260409020600101546105bf816105fb565b610171838361068b565b6097546001600160a01b03828116600090815260986020526040902054918116911680156105f5578091505b50919050565b6102868133610769565b61060f82826103c2565b61036f5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556106473390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61069582826103c2565b1561036f5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600054610100900460ff1661075d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161035c565b565b61036f8282610605565b61077382826103c2565b61036f57610780816107c2565b61078b8360206107d4565b60405160200161079c929190610b1d565b60408051601f198184030181529082905262461bcd60e51b825261035c91600401610b92565b60606102ba6001600160a01b03831660145b606060006107e3836002610bc5565b6107ee906002610bdc565b67ffffffffffffffff81111561080657610806610bef565b6040519080825280601f01601f191660200182016040528015610830576020820181803683370190505b509050600360fc1b8160008151811061084b5761084b610c05565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061087a5761087a610c05565b60200101906001600160f81b031916908160001a905350600061089e846002610bc5565b6108a9906001610bdc565b90505b6001811115610921576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106108dd576108dd610c05565b1a60f81b8282815181106108f3576108f3610c05565b60200101906001600160f81b031916908160001a90535060049490941c9361091a81610c1b565b90506108ac565b5083156109705760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161035c565b9392505050565b60006020828403121561098957600080fd5b81356001600160e01b03198116811461097057600080fd5b80356001600160a01b03811681146109b857600080fd5b919050565b6000602082840312156109cf57600080fd5b610970826109a1565b6000806000604084860312156109ed57600080fd5b6109f6846109a1565b9250602084013567ffffffffffffffff80821115610a1357600080fd5b818601915086601f830112610a2757600080fd5b813581811115610a3657600080fd5b876020828501011115610a4857600080fd5b6020830194508093505050509250925092565b600060208284031215610a6d57600080fd5b5035919050565b60008060408385031215610a8757600080fd5b82359150610a97602084016109a1565b90509250929050565b60008060408385031215610ab357600080fd5b610abc836109a1565b9150610a97602084016109a1565b634e487b7160e01b600052601160045260246000fd5b600060018201610af257610af2610aca565b5060010190565b60005b83811015610b14578181015183820152602001610afc565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351610b55816017850160208801610af9565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351610b86816028840160208801610af9565b01602801949350505050565b6020815260008251806020840152610bb1816040850160208701610af9565b601f01601f19169190910160400192915050565b80820281158282048414176102ba576102ba610aca565b808201808211156102ba576102ba610aca565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081610c2a57610c2a610aca565b50600019019056fea264697066735822122040236fb5a9f8d37d1dbed1e02d2c9cb8d0ce3408a1a8bc4db48fc822e65a260164736f6c63430008130033", + "nonce": "0x4f0", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "function": null, + "arguments": [ + "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "0x305D807d22070DfFF295f5575eCD354f72c2eB76", + "0xc4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0xcdd9f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000a4f3f987bebf7786fdc7147856be776fbd26029b000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb7600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x4f1", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xa247a9ee6a1e0eb7f2695a60e052a8a098a454f0b9648c5e30609d6314766039", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0x67eE62b7C507960Ea2d0e900F391eB1856723a88", + "function": null, + "arguments": [], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x2caa67", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61274b80620000f46000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806378c5195e11610104578063b08805a5116100a2578063d518b7ff11610071578063d518b7ff14610470578063d547741f14610483578063df3d053b14610496578063f8372320146104a957600080fd5b8063b08805a5146103f8578063b81155b51461040b578063c0c53b8b14610448578063cfc5a0c01461045b57600080fd5b806391d14854116100de57806391d14854146103a15780639ab29f2b146103b4578063a217fddf146103c7578063a626f573146103cf57600080fd5b806378c5195e146103685780638c72c54e1461037b5780638fd1101c1461038e57600080fd5b806336568abe1161017c5780634e4345921161014b5780634e434592146103155780634eb6b7f6146103285780636ce10ab61461033b578063754b377c1461034e57600080fd5b806336568abe146102c757806342f1e879146102da578063482a61ff146102ef5780634acdd3581461030257600080fd5b80631c44eb4f116101b85780631c44eb4f1461022f5780631d3b405a14610242578063248a9ca3146102835780632f2ff15d146102b457600080fd5b806301ffc9a7146101df57806319c0fab9146102075780631bfb1bb81461021c575b600080fd5b6101f26101ed366004611c44565b6104b2565b60405190151581526020015b60405180910390f35b61021a610215366004611cb9565b6104e9565b005b61021a61022a366004611d52565b610603565b61021a61023d366004611e0c565b6106b5565b61026b610250366004611e77565b6099602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b6102a6610291366004611e77565b60009081526065602052604090206001015490565b6040519081526020016101fe565b61021a6102c2366004611ea5565b610706565b61021a6102d5366004611ea5565b610730565b6102a66000805160206126f683398151915281565b61021a6102fd366004611ed5565b6107b3565b61021a610310366004611f20565b6107c8565b61021a610323366004611f6f565b6107fc565b60985461026b906001600160a01b031681565b61021a610349366004611fe2565b610867565b610356600181565b60405160ff90911681526020016101fe565b6102a6610376366004611ea5565b6108f9565b60975461026b906001600160a01b031681565b61021a61039c366004612023565b610927565b6101f26103af366004611ea5565b61096b565b6102a66103c2366004611ea5565b610996565b6102a6600081565b61026b6103dd366004611e77565b609a602052600090815260409020546001600160a01b031681565b61021a610406366004612069565b6109cd565b61041e610419366004611e77565b6109ef565b604080516001600160801b03948516815292841660208401529216918101919091526060016101fe565b61021a61045636600461208b565b610a24565b6102a66000805160206126d683398151915281565b61021a61047e3660046120d6565b610b96565b61021a610491366004611ea5565b610c70565b61021a6104a4366004612159565b610c95565b6102a66103e881565b60006001600160e01b03198216637965db0b60e01b14806104e357506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000805160206126d683398151915261050181610d39565b83868380831461052457604051632627b42d60e11b815260040160405180910390fd5b60005b838110156105f65761058289898381811061054457610544612187565b9050602002016020810190610559919061219d565b88888481811061056b5761056b612187565b905060200281019061057d91906121ba565b610d46565b60005b838110156105e5576105d58c8c838181106105a2576105a2612187565b905060200201358b8b858181106105bb576105bb612187565b90506020020160208101906105d0919061219d565b610daf565b6105de81612216565b9050610585565b506105ef81612216565b9050610527565b5050505050505050505050565b6000805160206126d683398151915261061b81610d39565b838280821461063d57604051632627b42d60e11b815260040160405180910390fd5b60005b828110156106aa5761068488888381811061065d5761065d612187565b9050602002016020810190610672919061219d565b87878481811061056b5761056b612187565b61069a898989848181106105bb576105bb612187565b6106a381612216565b9050610640565b505050505050505050565b6106c0338383610d46565b8260005b818110156106fe576106ee8686838181106106e1576106e1612187565b9050602002013533610daf565b6106f781612216565b90506106c4565b505050505050565b60008281526065602052604090206001015461072181610d39565b61072b8383610dd3565b505050565b6001600160a01b03811633146107a55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107af8282610e59565b5050565b6107be338383610d46565b61072b8333610daf565b6000805160206126d68339815191526107e081610d39565b6107eb848484610d46565b6107f58585610daf565b5050505050565b6000805160206126d683398151915261081481610d39565b61081f848484610d46565b8460005b8181101561085d5761084d88888381811061084057610840612187565b9050602002013587610daf565b61085681612216565b9050610823565b5050505050505050565b6000805160206126f683398151915261087f81610d39565b60006108946001600160a01b03851684610ec0565b9050806108b457604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260996020908152604080832080546001600160a01b039687166001600160a01b031991821617909155609a9092529091208054929093169116179055565b6000828152609a602052604081205461091d906001600160a01b0316308585610fe5565b9695505050505050565b6000805160206126f683398151915261093f81610d39565b61095585846109506103e88661222f565b611094565b6107f584846109666103e88661222f565b611145565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000828152609a60205260408120546109ba906001600160a01b0316308585610fe5565b506001600160801b031695945050505050565b6000805160206126f68339815191526109e581610d39565b61072b838361119b565b6000818152609a602052604081205481908190610a16906001600160a01b03163086611225565b919790965090945092505050565b600054610100900460ff1615808015610a445750600054600160ff909116105b80610a5e5750303b158015610a5e575060005460ff166001145b610ac15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161079c565b6000805460ff191660011790558015610ae4576000805461ff0019166101001790555b610aec6112cb565b610af7600085610dd3565b610b02600033610e59565b610b1a6000805160206126f683398151915284610dd3565b609880546001600160a01b038085166001600160a01b03199283161790925560978054928716929091169190911790558015610b90576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000805160206126f6833981519152610bae81610d39565b83828114610bcf57604051632627b42d60e11b815260040160405180910390fd5b60005b818110156106aa57610c1d89888884818110610bf057610bf0612187565b905060200201356103e8888886818110610c0c57610c0c612187565b90506020020135610950919061222f565b610c6088888884818110610c3357610c33612187565b905060200201356103e8888886818110610c4f57610c4f612187565b90506020020135610966919061222f565b610c6981612216565b9050610bd2565b600082815260656020526040902060010154610c8b81610d39565b61072b8383610e59565b6000610ca081610d39565b81610d2f576000848152609a6020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610d09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2d9190612246565b505b610b90848461119b565b610d438133611338565b50565b6098546040516305c8d5d960e21b81526001600160a01b0390911690631723576490610d7a90869086908690600401612263565b60006040518083038186803b158015610d9257600080fd5b505afa158015610da6573d6000803e3d6000fd5b50505050505050565b6000828152609a602052604090205461072b906001600160a01b0316308484611391565b610ddd828261096b565b6107af5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610e153390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610e63828261096b565b156107af5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610ece856114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610f0c57610f0c6122a3565b6040519080825280601f01601f191660200182016040528015610f36576020820181803683370190505b50604051602401610f4993929190612309565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610f9293925090600401612342565b6000604051808303816000875af1158015610fb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd99190810190612389565b50600195945050505050565b6000806000806000610ff689611683565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa15801561105d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110819190612451565b929c919b50995090975095505050505050565b6001600160a01b0383166110a757505050565b6000828152609a60205260408120546110cb906001600160a01b0316308587610fe5565b506001600160801b031692505050600082826110e791906124a1565b11611116576000838152609a6020526040902054611110906001600160a01b03163085876117e8565b50610b90565b6107f5838561112585856124a1565b6000878152609a60205260409020546001600160a01b0316929190611836565b6001600160a01b03831661115857505050565b6000828152609a602052604081205461117c906001600160a01b0316308587610fe5565b506001600160801b0316925050506107f58385848461112591906124b4565b6000828152609a60205260408120546111bf906001600160a01b03163085856118c3565b506000848152609a60205260409020549091506111e6906001600160a01b03168483611968565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910160405180910390a1505050565b600080600080600061123688611683565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b991906124c7565b94509450945094505093509350935093565b600054610100900460ff166113365760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161079c565b565b611342828261096b565b6107af5761134f81611a90565b61135a836020611aa2565b60405160200161136b92919061251d565b60408051601f198184030181529082905262461bcd60e51b825261079c91600401612592565b600080600061139f876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b038111156113df576113df6122a3565b6040519080825280601f01601f191660200182016040528015611409576020820181803683370190505b5060405160240161141e9594939291906125a5565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261146793925090600401612342565b6000604051808303816000875af1158015611486573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114ae9190810190612389565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661158157826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa15801561155a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061157e91906125e5565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156115e5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061160991906125e5565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b03821661166857611668612602565b6001600160a01b03811661167e5761167e612602565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661174857826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611721573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061174591906125e5565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156117ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d091906125e5565b90506001600160a01b03821661166857611668612602565b60008060006117f6876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b038111156113df576113df6122a3565b6000806000611844876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b03811115611884576118846122a3565b6040519080825280601f01601f1916602001820160405280156118ae576020820181803683370190505b5060405160240161141e959493929190612618565b60008060006118d187611683565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa158015611936573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195a919061265f565b925092505094509492505050565b6000806000611976866114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b038111156119b5576119b56122a3565b6040519080825280601f01601f1916602001820160405280156119df576020820181803683370190505b506040516024016119f3949392919061268b565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252611a3c93925090600401612342565b6000604051808303816000875af1158015611a5b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a839190810190612389565b5060019695505050505050565b60606104e36001600160a01b03831660145b60606000611ab183600261222f565b611abc9060026124b4565b6001600160401b03811115611ad357611ad36122a3565b6040519080825280601f01601f191660200182016040528015611afd576020820181803683370190505b509050600360fc1b81600081518110611b1857611b18612187565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611b4757611b47612187565b60200101906001600160f81b031916908160001a9053506000611b6b84600261222f565b611b769060016124b4565b90505b6001811115611bee576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611baa57611baa612187565b1a60f81b828281518110611bc057611bc0612187565b60200101906001600160f81b031916908160001a90535060049490941c93611be7816126be565b9050611b79565b508315611c3d5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161079c565b9392505050565b600060208284031215611c5657600080fd5b81356001600160e01b031981168114611c3d57600080fd5b60008083601f840112611c8057600080fd5b5081356001600160401b03811115611c9757600080fd5b6020830191508360208260051b8501011115611cb257600080fd5b9250929050565b60008060008060008060608789031215611cd257600080fd5b86356001600160401b0380821115611ce957600080fd5b611cf58a838b01611c6e565b90985096506020890135915080821115611d0e57600080fd5b611d1a8a838b01611c6e565b90965094506040890135915080821115611d3357600080fd5b50611d4089828a01611c6e565b979a9699509497509295939492505050565b600080600080600060608688031215611d6a57600080fd5b8535945060208601356001600160401b0380821115611d8857600080fd5b611d9489838a01611c6e565b90965094506040880135915080821115611dad57600080fd5b50611dba88828901611c6e565b969995985093965092949392505050565b60008083601f840112611ddd57600080fd5b5081356001600160401b03811115611df457600080fd5b602083019150836020828501011115611cb257600080fd5b60008060008060408587031215611e2257600080fd5b84356001600160401b0380821115611e3957600080fd5b611e4588838901611c6e565b90965094506020870135915080821115611e5e57600080fd5b50611e6b87828801611dcb565b95989497509550505050565b600060208284031215611e8957600080fd5b5035919050565b6001600160a01b0381168114610d4357600080fd5b60008060408385031215611eb857600080fd5b823591506020830135611eca81611e90565b809150509250929050565b600080600060408486031215611eea57600080fd5b8335925060208401356001600160401b03811115611f0757600080fd5b611f1386828701611dcb565b9497909650939450505050565b60008060008060608587031215611f3657600080fd5b843593506020850135611f4881611e90565b925060408501356001600160401b03811115611f6357600080fd5b611e6b87828801611dcb565b600080600080600060608688031215611f8757600080fd5b85356001600160401b0380821115611f9e57600080fd5b611faa89838a01611c6e565b909750955060208801359150611fbf82611e90565b90935060408701359080821115611fd557600080fd5b50611dba88828901611dcb565b600080600060608486031215611ff757600080fd5b833561200281611e90565b9250602084013561201281611e90565b929592945050506040919091013590565b6000806000806080858703121561203957600080fd5b843561204481611e90565b9350602085013561205481611e90565b93969395505050506040820135916060013590565b6000806040838503121561207c57600080fd5b50508035926020909101359150565b6000806000606084860312156120a057600080fd5b83356120ab81611e90565b925060208401356120bb81611e90565b915060408401356120cb81611e90565b809150509250925092565b600080600080600080608087890312156120ef57600080fd5b86356120fa81611e90565b9550602087013561210a81611e90565b945060408701356001600160401b038082111561212657600080fd5b6121328a838b01611c6e565b90965094506060890135915080821115611d3357600080fd5b8015158114610d4357600080fd5b60008060006060848603121561216e57600080fd5b833592506020840135915060408401356120cb8161214b565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156121af57600080fd5b8135611c3d81611e90565b6000808335601e198436030181126121d157600080fd5b8301803591506001600160401b038211156121eb57600080fd5b602001915036819003821315611cb257600080fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161222857612228612200565b5060010190565b80820281158282048414176104e3576104e3612200565b60006020828403121561225857600080fd5b8151611c3d8161214b565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156122d45781810151838201526020016122bc565b50506000910152565b600081518084526122f58160208601602086016122b9565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090612339908301846122dd565b95945050505050565b6001600160a01b0383168152606060208201819052600090612366908301846122dd565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b60006020828403121561239b57600080fd5b81516001600160401b03808211156123b257600080fd5b818401915084601f8301126123c657600080fd5b8151818111156123d8576123d86122a3565b604051601f8201601f19908116603f01168101908382118183101715612400576124006122a3565b8160405282815287602084870101111561241957600080fd5b61242a8360208301602088016122b9565b979650505050505050565b80516001600160801b038116811461244c57600080fd5b919050565b6000806000806080858703121561246757600080fd5b84516124728161214b565b60208601519094506124838161214b565b925061249160408601612435565b6060959095015193969295505050565b818103818111156104e3576104e3612200565b808201808211156104e3576104e3612200565b600080600080608085870312156124dd57600080fd5b84516124e88161214b565b93506124f660208601612435565b925061250460408601612435565b915061251260608601612435565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516125558160178501602088016122b9565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516125868160288401602088016122b9565b01602801949350505050565b602081526000611c3d60208301846122dd565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061242a908301846122dd565b6000602082840312156125f757600080fd5b8151611c3d81611e90565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061242a908301846122dd565b6000806040838503121561267257600080fd5b8251915061268260208401612435565b90509250929050565b60018060a01b038516815263ffffffff8416602082015282604082015260806060820152600061091d60808301846122dd565b6000816126cd576126cd612200565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca26469706673582212202cf747c17ad27ef3d17cee929f2bd07e1aa1ad70bb10abbafad36fd69d82ff2a64736f6c63430008130033", + "nonce": "0x4f2", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x0b2d706956e4a636da4bd672e0784bcd7645e4c8b9d6d3eac61581d7749558b9", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0xa765c364f57598f4175Cd482694a2934fD408CF9", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x3d17bd", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61364680620000f46000396000f3fe6080604052600436106102465760003560e01c806366748e9811610139578063a1db9782116100b6578063cb22e01b1161007a578063cb22e01b146106e0578063d5abeb01146106f3578063de7ecf8714610709578063e985e9c51461071f578063f2fde38b1461073f578063fe325e961461075f57600080fd5b8063a1db97821461064d578063a22cb4651461066d578063aa10820e1461068d578063b88d4fde146106ad578063c87b56dd146106c057600080fd5b8063715018a6116100fd578063715018a6146105be578063754b377c146105d35780638c72c54e146105fa5780638da5cb5b1461061a57806395d89b411461063857600080fd5b806366748e98146105065780636cc82b841461053e5780636dbdaae61461055e5780636f8b44b01461057e57806370a082311461059e57600080fd5b80632e37eef6116101c7578063493548441161018b57806349354844146104525780634b102262146104725780634c5dffea146104a657806355f804b3146104c65780636352211e146104e657600080fd5b80632e37eef6146103905780632fb3b361146103df5780634128541c146103ff57806342842e0e1461041f578063430ab18f1461043257600080fd5b8063180f1ea31161020e578063180f1ea31461030f57806318160ddd146103245780631c6d76751461034757806323b872dd146103675780632a778c9b1461037a57600080fd5b806301ffc9a71461024b57806306fdde0314610280578063075834cb146102a2578063081812fc146102c4578063095ea7b3146102fc575b600080fd5b34801561025757600080fd5b5061026b610266366004612a1f565b610774565b60405190151581526020015b60405180910390f35b34801561028c57600080fd5b50610295610785565b6040516102779190612a8c565b3480156102ae57600080fd5b506102c26102bd366004612afc565b610820565b005b3480156102d057600080fd5b506102e46102df366004612bcf565b610917565b6040516001600160a01b039091168152602001610277565b6102c261030a366004612be8565b610964565b34801561031b57600080fd5b506102c2610974565b34801561033057600080fd5b50610339610c0b565b604051908152602001610277565b34801561035357600080fd5b506069546102e4906001600160a01b031681565b6102c2610375366004612c14565b610c2b565b34801561038657600080fd5b50610339606a5481565b34801561039c57600080fd5b506103b06103ab366004612bcf565b610e2b565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610277565b3480156103eb57600080fd5b506102c26103fa366004612ce0565b610e74565b34801561040b57600080fd5b506065546102e4906001600160a01b031681565b6102c261042d366004612c14565b611106565b34801561043e57600080fd5b506102c261044d366004612d7b565b611126565b34801561045e57600080fd5b506067546102e4906001600160a01b031681565b34801561047e57600080fd5b506103397f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156104b257600080fd5b506102c26104c1366004612e12565b61116d565b3480156104d257600080fd5b506102c26104e1366004612ea7565b611185565b3480156104f257600080fd5b506102e4610501366004612bcf565b61119a565b34801561051257600080fd5b50610339610521366004612be8565b606e60209081526000928352604080842090915290825290205481565b34801561054a57600080fd5b506066546102e4906001600160a01b031681565b34801561056a57600080fd5b506102c2610579366004612bcf565b6111a5565b34801561058a57600080fd5b506102c2610599366004612bcf565b6111b2565b3480156105aa57600080fd5b506103396105b9366004612ee8565b6111e7565b3480156105ca57600080fd5b506102c261124f565b3480156105df57600080fd5b506105e8600181565b60405160ff9091168152602001610277565b34801561060657600080fd5b506068546102e4906001600160a01b031681565b34801561062657600080fd5b506033546001600160a01b03166102e4565b34801561064457600080fd5b50610295611263565b34801561065957600080fd5b506102c2610668366004612be8565b61129f565b34801561067957600080fd5b506102c2610688366004612f13565b611347565b34801561069957600080fd5b506102c26106a8366004612f4c565b6113c4565b6102c26106bb366004612fc0565b6115b4565b3480156106cc57600080fd5b506102956106db366004612bcf565b6115fe565b6102c26106ee366004612e12565b611759565b3480156106ff57600080fd5b50610339606f5481565b34801561071557600080fd5b50610339606b5481565b34801561072b57600080fd5b5061026b61073a36600461303f565b611995565b34801561074b57600080fd5b506102c261075a366004612ee8565b6119d2565b34801561076b57600080fd5b506102c2611a4b565b600061077f82611c1d565b92915050565b606061078f611c6b565b600201805461079d9061306d565b80601f01602080910402602001604051908101604052809291908181526020018280546107c99061306d565b80156108165780601f106107eb57610100808354040283529160200191610816565b820191906000526020600020905b8154815290600101906020018083116107f957829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061085a5761085a6130a1565b90600052602060002090600602016003015461087691906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b1580156108e357600080fd5b505af11580156108f7573d6000803e3d6000fd5b5050505061090a8b8b8b87878787611c8f565b5050505050505050505050565b600061092282611f40565b61093f576040516333d1c03960e21b815260040160405180910390fd5b610947611c6b565b60009283526006016020525060409020546001600160a01b031690565b61097082826001611f89565b5050565b61097c61203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156109d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fa91906130e4565b90925090506001600160a01b038216610a2657604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a939190613112565b90506000612710610aa484846130cd565b610aae919061312b565b90506000610abc828461314d565b90508015610b5e5760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3c9190613160565b905080610b5c57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c045760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610bbe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be29190613160565b905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610c17611c6b565b60010154610c23611c6b565b540303919050565b6000610c3682612098565b9050836001600160a01b0316816001600160a01b031614610c695760405162a1148160e81b815260040160405180910390fd5b600080610c7584612145565b91509150610c9a8187610c853390565b6001600160a01b039081169116811491141790565b610cc557610ca88633611995565b610cc557604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610cec57604051633a954ecd60e21b815260040160405180910390fd5b610cf9868686600161216d565b8015610d0457600082555b610d0c611c6b565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610d38611c6b565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d6f611c6b565b60008681526004919091016020526040812091909155600160e11b84169003610de55760018401610d9e611c6b565b600082815260049190910160205260408120549003610de357610dbf611c6b565b548114610de35783610dcf611c6b565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610c02565b606d8181548110610e3b57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b6000805160206135f183398151915254610100900460ff16610ea9576000805160206135f18339815191525460ff1615610ead565b303b155b610f245760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b6000805160206135f183398151915254610100900460ff16158015610f60576000805160206135f1833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f805750600054600160ff909116105b80610f9a5750303b158015610f9a575060005460ff166001145b610ffd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610f1b565b6000805460ff191660011790558015611020576000805461ff0019166101001790555b61103983604051806020016040528060008152506121f4565b611041612232565b61104a87612261565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a169290911691909117905580156110df576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610c025750506000805160206135f1833981519152805461ff001916905550505050565b611121838383604051806020016040528060008152506115b4565b505050565b61112e61203e565b606f8890558786111561115457604051632627b42d60e11b815260040160405180910390fd5b611163878787878787876122b3565b5050505050505050565b61117c87878787878787611c8f565b50505050505050565b61118d61203e565b606c6111218284836131c3565b600061077f82612098565b6111ad61203e565b606b55565b6111ba61203e565b6111c26123f6565b8110156111e257604051632627b42d60e11b815260040160405180910390fd5b606f55565b60006001600160a01b038216611210576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611220611c6b565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61125761203e565b6112616000612261565b565b6060606a5460001461129c5761127a606a54612409565b60405160200161128a9190613282565b60405160208183030381529060405290505b90565b6112a761203e565b6069546001600160a01b03908116908316036112d657604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611323573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111219190613160565b80611350611c6b565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113cc61203e565b606d54156113e0576113e0606d60006129ad565b600081815b8181101561157a576000858583818110611401576114016130a1565b905060c0020180360381019061141791906132ac565b9050838160000151108061142f575060208101518151115b1561144d57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506115738161332b565b90506113e5565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6115bf848484610c2b565b6001600160a01b0383163b156115f8576115db8484848461249b565b6115f8576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061160982611f40565b61162657604051632627b42d60e11b815260040160405180910390fd5b6000611630612586565b9050805160000361165257604051806020016040528060008152509150611753565b6040805160018082528183019092526000916020820181803683370190505090508160018351611682919061314d565b81518110611692576116926130a1565b602001015160f81c60f81b816000815181106116b0576116b06130a1565b60200101906001600160f81b031916908160001a905350604051602f60f81b6020820152819060210160405160208183030381529060405280519060200120816040516020016117009190613344565b604051602081830303815290604052805190602001200361174c578261172586612595565b604051602001611736929190613360565b6040516020818303038152906040529350611750565b8293505b50505b50919050565b6117648783836125d9565b61176d86612639565b61178a576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061179f5761179f6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f54909150866118086123f6565b611812919061338f565b1115611831576040516322eb5e9560e21b815260040160405180910390fd5b8060a001516118d0576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611872908b9030908c908b908b906004016133cb565b602060405180830381865afa15801561188f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118b39190613160565b6118d0576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b845290915290205461190490889061338f565b111561192357604051631d66b65960e11b815260040160405180910390fd5b85816040015161193391906130cd565b3414611952576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a84529091528120805488929061198590849061338f565b90915550611163905088876126ea565b600061199f611c6b565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6119da61203e565b6001600160a01b038116611a3f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610f1b565b611a4881612261565b50565b611a5361203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611aad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad191906130e4565b90925090506001600160a01b038216611afd57604051632627b42d60e11b815260040160405180910390fd5b476000612710611b0d84846130cd565b611b17919061312b565b90506000611b25828461314d565b90508015611ba3576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611b7a576040519150601f19603f3d011682016040523d82523d6000602084013e611b7f565b606091505b5050905080611ba157604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c04576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611bf6576040519150601f19603f3d011682016040523d82523d6000602084013e611bfb565b606091505b5050905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611c4e57506380ac58cd60e01b6001600160e01b03198316145b8061077f5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611c9a8783836125d9565b6069546001600160a01b0316611cc357604051632d1f608d60e11b815260040160405180910390fd5b611ccc86612639565b611ce9576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611cfe57611cfe6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f5490915086611d676123f6565b611d71919061338f565b1115611d90576040516322eb5e9560e21b815260040160405180910390fd5b8060a00151611e2f576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611dd1908b9030908c908b908b906004016133cb565b602060405180830381865afa158015611dee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e129190613160565b611e2f576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b8452909152902054611e6390889061338f565b1115611e8257604051631d66b65960e11b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611eab908b906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611eff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f239190613160565b61195257604051635b88974760e11b815260040160405180910390fd5b600081600111158015611f5a5750611f56611c6b565b5482105b801561077f5750600160e01b611f6e611c6b565b60008481526004919091016020526040902054161592915050565b6000611f948361119a565b90508115611fd357336001600160a01b03821614611fd357611fb68133611995565b611fd3576040516367d9dca160e11b815260040160405180910390fd5b83611fdc611c6b565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146112615760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610f1b565b60008160011161212c576120aa611c6b565b600083815260049190910160205260408120549150600160e01b8216900361212c5780600003612127576120dc611c6b565b5482106120fc57604051636f96cda160e11b815260040160405180910390fd5b612104611c6b565b6000199092016000818152600493909301602052604090922054905080156120fc575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000612152611c6b565b60009485526006016020525050604090912080549092909150565b606b54156115f857606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156121e057600080fd5b505af1158015611163573d6000803e3d6000fd5b6000805160206135f183398151915254610100900460ff166122285760405162461bcd60e51b8152600401610f1b9061340a565b6109708282612832565b600054610100900460ff166122595760405162461bcd60e51b8152600401610f1b9061345e565b6112616128a5565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a54156122d4576040516302d1671b60e41b815260040160405180910390fd5b861580156122ea57506001600160a01b03841615155b8061230657506001600160a01b03841615801561230657508615155b1561232457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015612381573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123a59190613112565b606a556001600160a01b038316156123d357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c6123e58284836131c3565b50851561117c5761117c85876126ea565b60006001612402611c6b565b5403919050565b60606000612416836128d5565b60010190506000816001600160401b0381111561243557612435612c55565b6040519080825280601f01601f19166020018201604052801561245f576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461246957509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906124d09033908990889088906004016134a9565b6020604051808303816000875af192505050801561250b575060408051601f3d908101601f19168201909252612508918101906134e6565b60015b612569573d808015612539576040519150601f19603f3d011682016040523d82523d6000602084013e61253e565b606091505b508051600003612561576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461079d9061306d565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a9004806125af5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061260d90869086908690600401613503565b60006040518083038186803b15801561262557600080fd5b505afa15801561117c573d6000803e3d6000fd5b606d54600090821061265e57604051632627b42d60e11b815260040160405180910390fd5b6000606d8381548110612673576126736130a1565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906126e35750428160200151115b9392505050565b60006126f4611c6b565b54905060008290036127195760405163b562e8dd60e01b815260040160405180910390fd5b612726600084838561216d565b68010000000000000001820261273a611c6b565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717612775611c6b565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146127ff57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001016127c7565b508160000361282057604051622e076360e81b815260040160405180910390fd5b80612829611c6b565b55506111219050565b6000805160206135f183398151915254610100900460ff166128665760405162461bcd60e51b8152600401610f1b9061340a565b8161286f611c6b565b6002019061287d9082613531565b5080612887611c6b565b600301906128959082613531565b5060016128a0611c6b565b555050565b600054610100900460ff166128cc5760405162461bcd60e51b8152600401610f1b9061345e565b61126133612261565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106129145772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612940576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061295e57662386f26fc10000830492506010015b6305f5e1008310612976576305f5e100830492506008015b612710831061298a57612710830492506004015b6064831061299c576064830492506002015b600a831061077f5760010192915050565b5080546000825560060290600052602060002090810190611a4891905b80821115612a05576000808255600182018190556002820181905560038201819055600482015560058101805460ff191690556006016129ca565b5090565b6001600160e01b031981168114611a4857600080fd5b600060208284031215612a3157600080fd5b81356126e381612a09565b60005b83811015612a57578181015183820152602001612a3f565b50506000910152565b60008151808452612a78816020860160208601612a3c565b601f01601f19169290920160200192915050565b6020815260006126e36020830184612a60565b6001600160a01b0381168114611a4857600080fd5b60008083601f840112612ac657600080fd5b5081356001600160401b03811115612add57600080fd5b602083019150836020828501011115612af557600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215612b1e57600080fd5b612b288c35612a9f565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff81168114612b5557600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d0135811015612b7e57600080fd5b612b8e8e60e08f01358f01612ab4565b90955093506101008d0135811015612ba557600080fd5b50612bb78d6101008e01358e01612ab4565b81935080925050509295989b509295989b9093969950565b600060208284031215612be157600080fd5b5035919050565b60008060408385031215612bfb57600080fd5b8235612c0681612a9f565b946020939093013593505050565b600080600060608486031215612c2957600080fd5b8335612c3481612a9f565b92506020840135612c4481612a9f565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612c8557612c85612c55565b604051601f8501601f19908116603f01168101908282118183101715612cad57612cad612c55565b81604052809350858152868686011115612cc657600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612cf857600080fd5b8535612d0381612a9f565b94506020860135612d1381612a9f565b93506040860135612d2381612a9f565b92506060860135612d3381612a9f565b915060808601356001600160401b03811115612d4e57600080fd5b8601601f81018813612d5f57600080fd5b612d6e88823560208401612c6b565b9150509295509295909350565b60008060008060008060008060e0898b031215612d9757600080fd5b8835975060208901359650604089013595506060890135612db781612a9f565b94506080890135612dc781612a9f565b935060a0890135612dd781612a9f565b925060c08901356001600160401b03811115612df257600080fd5b612dfe8b828c01612ab4565b999c989b5096995094979396929594505050565b600080600080600080600060a0888a031215612e2d57600080fd5b8735612e3881612a9f565b9650602088013595506040880135945060608801356001600160401b0380821115612e6257600080fd5b612e6e8b838c01612ab4565b909650945060808a0135915080821115612e8757600080fd5b50612e948a828b01612ab4565b989b979a50959850939692959293505050565b60008060208385031215612eba57600080fd5b82356001600160401b03811115612ed057600080fd5b612edc85828601612ab4565b90969095509350505050565b600060208284031215612efa57600080fd5b81356126e381612a9f565b8015158114611a4857600080fd5b60008060408385031215612f2657600080fd5b8235612f3181612a9f565b91506020830135612f4181612f05565b809150509250929050565b60008060208385031215612f5f57600080fd5b82356001600160401b0380821115612f7657600080fd5b818501915085601f830112612f8a57600080fd5b813581811115612f9957600080fd5b86602060c083028501011115612fae57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612fd657600080fd5b8435612fe181612a9f565b93506020850135612ff181612a9f565b92506040850135915060608501356001600160401b0381111561301357600080fd5b8501601f8101871361302457600080fd5b61303387823560208401612c6b565b91505092959194509250565b6000806040838503121561305257600080fd5b823561305d81612a9f565b91506020830135612f4181612a9f565b600181811c9082168061308157607f821691505b60208210810361175357634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761077f5761077f6130b7565b600080604083850312156130f757600080fd5b825161310281612a9f565b6020939093015192949293505050565b60006020828403121561312457600080fd5b5051919050565b60008261314857634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561077f5761077f6130b7565b60006020828403121561317257600080fd5b81516126e381612f05565b601f82111561112157600081815260208120601f850160051c810160208610156131a45750805b601f850160051c820191505b81811015610c02578281556001016131b0565b6001600160401b038311156131da576131da612c55565b6131ee836131e8835461306d565b8361317d565b6000601f841160018114613222576000851561320a5750838201355b600019600387901b1c1916600186901b178355610c04565b600083815260209020601f19861690835b828110156132535786850135825560209485019460019092019101613233565b50868210156132705760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b81526000825161329f816002850160208701612a3c565b9190910160020192915050565b600060c082840312156132be57600080fd5b60405160c081018181106001600160401b03821117156132e0576132e0612c55565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561331f81612f05565b60a08201529392505050565b60006001820161333d5761333d6130b7565b5060010190565b60008251613356818460208701612a3c565b9190910192915050565b60008351613372818460208801612a3c565b835190830190613386818360208801612a3c565b01949350505050565b8082018082111561077f5761077f6130b7565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b03868116825285166020820152604081018490526080606082018190526000906133ff90830184866133a2565b979650505050505050565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906134dc90830184612a60565b9695505050505050565b6000602082840312156134f857600080fd5b81516126e381612a09565b6001600160a01b038416815260406020820181905260009061352890830184866133a2565b95945050505050565b81516001600160401b0381111561354a5761354a612c55565b61355e81613558845461306d565b8461317d565b602080601f831160018114613593576000841561357b5750858301515b600019600386901b1c1916600185901b178555610c02565b600085815260208120601f198616915b828110156135c2578886015182559484019460019091019084016135a3565b50858210156135e05787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220515503e22fdd6aa41a7f1ead0718a036029ff0c2ebd762dd021a3b7635b7249464736f6c63430008130033", + "nonce": "0x4f3", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xd2dd252aa53fa8d07f148b36ad079374acf52e2f2d5a75850d30edf1e22399ae", + "transactionType": "CREATE", + "contractName": "ERC721ABOE", + "contractAddress": "0x12905691B20F5045EC76cC0be411199051206230", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x3b2cf4", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61348780620000f46000396000f3fe6080604052600436106102305760003560e01c806366748e981161012e578063a1db9782116100ab578063cb22e01b1161006f578063cb22e01b146106aa578063de7ecf87146106bd578063e985e9c5146106d3578063f2fde38b146106f3578063fe325e961461071357600080fd5b8063a1db978214610617578063a22cb46514610637578063aa10820e14610657578063b88d4fde14610677578063c87b56dd1461068a57600080fd5b8063754b377c116100f2578063754b377c1461057d5780638c72c54e146105a45780638d6d31e3146105c45780638da5cb5b146105e457806395d89b411461060257600080fd5b806366748e98146104d05780636cc82b84146105085780636dbdaae61461052857806370a0823114610548578063715018a61461056857600080fd5b80632a778c9b116101bc5780634935484411610180578063493548441461041c5780634b1022621461043c5780634c5dffea1461047057806355f804b3146104905780636352211e146104b057600080fd5b80632a778c9b146103645780632e37eef61461037a5780632fb3b361146103c95780634128541c146103e957806342842e0e1461040957600080fd5b8063095ea7b311610203578063095ea7b3146102e6578063180f1ea3146102f957806318160ddd1461030e5780631c6d76751461033157806323b872dd1461035157600080fd5b806301ffc9a71461023557806306fdde031461026a578063075834cb1461028c578063081812fc146102ae575b600080fd5b34801561024157600080fd5b5061025561025036600461287c565b610728565b60405190151581526020015b60405180910390f35b34801561027657600080fd5b5061027f610739565b60405161026191906128e9565b34801561029857600080fd5b506102ac6102a7366004612959565b6107d4565b005b3480156102ba57600080fd5b506102ce6102c9366004612a2c565b6108cb565b6040516001600160a01b039091168152602001610261565b6102ac6102f4366004612a45565b610918565b34801561030557600080fd5b506102ac610928565b34801561031a57600080fd5b50610323610bbf565b604051908152602001610261565b34801561033d57600080fd5b506069546102ce906001600160a01b031681565b6102ac61035f366004612a71565b610bdf565b34801561037057600080fd5b50610323606a5481565b34801561038657600080fd5b5061039a610395366004612a2c565b610ddf565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610261565b3480156103d557600080fd5b506102ac6103e4366004612b3d565b610e28565b3480156103f557600080fd5b506065546102ce906001600160a01b031681565b6102ac610417366004612a71565b6110ba565b34801561042857600080fd5b506067546102ce906001600160a01b031681565b34801561044857600080fd5b506103237fdcfc50123fc6ea3c803b5b1b4cbbc9ce5b81f13451fd3124e43ef593fd840d1981565b34801561047c57600080fd5b506102ac61048b366004612bd8565b6110da565b34801561049c57600080fd5b506102ac6104ab366004612c6d565b6110f2565b3480156104bc57600080fd5b506102ce6104cb366004612a2c565b611107565b3480156104dc57600080fd5b506103236104eb366004612a45565b606e60209081526000928352604080842090915290825290205481565b34801561051457600080fd5b506066546102ce906001600160a01b031681565b34801561053457600080fd5b506102ac610543366004612a2c565b611112565b34801561055457600080fd5b50610323610563366004612cae565b61111f565b34801561057457600080fd5b506102ac611187565b34801561058957600080fd5b50610592600181565b60405160ff9091168152602001610261565b3480156105b057600080fd5b506068546102ce906001600160a01b031681565b3480156105d057600080fd5b506102ac6105df366004612ccb565b61119b565b3480156105f057600080fd5b506033546001600160a01b03166102ce565b34801561060e57600080fd5b5061027f6111b2565b34801561062357600080fd5b506102ac610632366004612a45565b6111ee565b34801561064357600080fd5b506102ac610652366004612d54565b611296565b34801561066357600080fd5b506102ac610672366004612d8d565b611313565b6102ac610685366004612e01565b611503565b34801561069657600080fd5b5061027f6106a5366004612a2c565b61154d565b6102ac6106b8366004612bd8565b6116a8565b3480156106c957600080fd5b50610323606b5481565b3480156106df57600080fd5b506102556106ee366004612e80565b61184d565b3480156106ff57600080fd5b506102ac61070e366004612cae565b61188a565b34801561071f57600080fd5b506102ac611903565b600061073382611ad5565b92915050565b6060610743611b23565b600201805461075190612eae565b80601f016020809104026020016040519081016040528092919081815260200182805461077d90612eae565b80156107ca5780601f1061079f576101008083540402835291602001916107ca565b820191906000526020600020905b8154815290600101906020018083116107ad57829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061080e5761080e612ee2565b90600052602060002090600602016003015461082a9190612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b15801561089757600080fd5b505af11580156108ab573d6000803e3d6000fd5b505050506108be8b8b8b87878787611b47565b5050505050505050505050565b60006108d682611db0565b6108f3576040516333d1c03960e21b815260040160405180910390fd5b6108fb611b23565b60009283526006016020525060409020546001600160a01b031690565b61092482826001611df9565b5050565b610930611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa15801561098a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ae9190612f25565b90925090506001600160a01b0382166109da57604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a479190612f53565b90506000612710610a588484612f0e565b610a629190612f6c565b90506000610a708284612f8e565b90508015610b125760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610acc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af09190612fa1565b905080610b1057604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb85760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b969190612fa1565b905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610bcb611b23565b60010154610bd7611b23565b540303919050565b6000610bea82611f08565b9050836001600160a01b0316816001600160a01b031614610c1d5760405162a1148160e81b815260040160405180910390fd5b600080610c2984611fb5565b91509150610c4e8187610c393390565b6001600160a01b039081169116811491141790565b610c7957610c5c863361184d565b610c7957604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610ca057604051633a954ecd60e21b815260040160405180910390fd5b610cad8686866001611fdd565b8015610cb857600082555b610cc0611b23565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610cec611b23565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d23611b23565b60008681526004919091016020526040812091909155600160e11b84169003610d995760018401610d52611b23565b600082815260049190910160205260408120549003610d9757610d73611b23565b548114610d975783610d83611b23565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610bb6565b606d8181548110610def57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b60008051602061343283398151915254610100900460ff16610e5d576000805160206134328339815191525460ff1615610e61565b303b155b610ed85760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b60008051602061343283398151915254610100900460ff16158015610f1457600080516020613432833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f345750600054600160ff909116105b80610f4e5750303b158015610f4e575060005460ff166001145b610fb15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610ecf565b6000805460ff191660011790558015610fd4576000805461ff0019166101001790555b610fed8360405180602001604052806000815250612064565b610ff56120a2565b610ffe876120d1565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a16929091169190911790558015611093576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610bb6575050600080516020613432833981519152805461ff001916905550505050565b6110d583838360405180602001604052806000815250611503565b505050565b6110e987878787878787611b47565b50505050505050565b6110fa611eae565b606c6110d5828483613004565b600061073382611f08565b61111a611eae565b606b55565b60006001600160a01b038216611148576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611158611b23565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61118f611eae565b61119960006120d1565b565b6111a3611eae565b6110e987878787878787612123565b6060606a546000146111eb576111c9606a54612266565b6040516020016111d991906130c3565b60405160208183030381529060405290505b90565b6111f6611eae565b6069546001600160a01b039081169083160361122557604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611272573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d59190612fa1565b8061129f611b23565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61131b611eae565b606d541561132f5761132f606d600061280a565b600081815b818110156114c957600085858381811061135057611350612ee2565b905060c0020180360381019061136691906130ed565b9050838160000151108061137e575060208101518151115b1561139c57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506114c28161316c565b9050611334565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b61150e848484610bdf565b6001600160a01b0383163b156115475761152a848484846122f8565b611547576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061155882611db0565b61157557604051632627b42d60e11b815260040160405180910390fd5b600061157f6123e3565b905080516000036115a1576040518060200160405280600081525091506116a2565b60408051600180825281830190925260009160208201818036833701905050905081600183516115d19190612f8e565b815181106115e1576115e1612ee2565b602001015160f81c60f81b816000815181106115ff576115ff612ee2565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161164f9190613185565b604051602081830303815290604052805190602001200361169b5782611674866123f2565b6040516020016116859291906131a1565b604051602081830303815290604052935061169f565b8293505b50505b50919050565b606a546000036116cb576040516316812a5360e11b815260040160405180910390fd5b6116d6878383612436565b6116df86612496565b6116fc576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061171157611711612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820181905290915061180a576066546040516332f1944960e21b81526001600160a01b039091169063cbc65124906117ac908b9030908c908b908b906004016131f9565b602060405180830381865afa1580156117c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ed9190612fa1565b61180a576040516352c973a760e01b815260040160405180910390fd5b85816040015161181a9190612f0e565b3414611839576040516318f4198360e21b815260040160405180910390fd5b6118438887612547565b5050505050505050565b6000611857611b23565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b611892611eae565b6001600160a01b0381166118f75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610ecf565b611900816120d1565b50565b61190b611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611965573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119899190612f25565b90925090506001600160a01b0382166119b557604051632627b42d60e11b815260040160405180910390fd5b4760006127106119c58484612f0e565b6119cf9190612f6c565b905060006119dd8284612f8e565b90508015611a5b576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611a32576040519150601f19603f3d011682016040523d82523d6000602084013e611a37565b606091505b5050905080611a5957604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb8576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611aae576040519150601f19603f3d011682016040523d82523d6000602084013e611ab3565b606091505b5050905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611b0657506380ac58cd60e01b6001600160e01b03198316145b806107335750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611b52878383612436565b6069546001600160a01b0316611b7b57604051632d1f608d60e11b815260040160405180910390fd5b611b8486612496565b611ba1576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611bb657611bb6612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a08201819052909150611caf576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611c51908b9030908c908b908b906004016131f9565b602060405180830381865afa158015611c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c929190612fa1565b611caf576040516352c973a760e01b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611cd8908b90612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611d2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d509190612fa1565b611d6d57604051635b88974760e11b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a845290915281208054889290611da0908490613238565b9091555061184390508887612547565b600081600111158015611dca5750611dc6611b23565b5482105b80156107335750600160e01b611dde611b23565b60008481526004919091016020526040902054161592915050565b6000611e0483611107565b90508115611e4357336001600160a01b03821614611e4357611e26813361184d565b611e43576040516367d9dca160e11b815260040160405180910390fd5b83611e4c611b23565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146111995760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610ecf565b600081600111611f9c57611f1a611b23565b600083815260049190910160205260408120549150600160e01b82169003611f9c5780600003611f9757611f4c611b23565b548210611f6c57604051636f96cda160e11b815260040160405180910390fd5b611f74611b23565b600019909201600081815260049390930160205260409092205490508015611f6c575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611fc2611b23565b60009485526006016020525050604090912080549092909150565b606b541561154757606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b15801561205057600080fd5b505af1158015611843573d6000803e3d6000fd5b60008051602061343283398151915254610100900460ff166120985760405162461bcd60e51b8152600401610ecf9061324b565b610924828261268f565b600054610100900460ff166120c95760405162461bcd60e51b8152600401610ecf9061329f565b611199612702565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a5415612144576040516302d1671b60e41b815260040160405180910390fd5b8615801561215a57506001600160a01b03841615155b8061217657506001600160a01b03841615801561217657508615155b1561219457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af11580156121f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122159190612f53565b606a556001600160a01b0383161561224357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c612255828483613004565b5085156110e9576110e98587612547565b6060600061227383612732565b60010190506000816001600160401b0381111561229257612292612ab2565b6040519080825280601f01601f1916602001820160405280156122bc576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846122c657509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a029061232d9033908990889088906004016132ea565b6020604051808303816000875af1925050508015612368575060408051601f3d908101601f1916820190925261236591810190613327565b60015b6123c6573d808015612396576040519150601f19603f3d011682016040523d82523d6000602084013e61239b565b606091505b5080516000036123be576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461075190612eae565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a90048061240c5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061246a90869086908690600401613344565b60006040518083038186803b15801561248257600080fd5b505afa1580156110e9573d6000803e3d6000fd5b606d5460009082106124bb57604051632627b42d60e11b815260040160405180910390fd5b6000606d83815481106124d0576124d0612ee2565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906125405750428160200151115b9392505050565b6000612551611b23565b54905060008290036125765760405163b562e8dd60e01b815260040160405180910390fd5b6125836000848385611fdd565b680100000000000000018202612597611b23565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b17176125d2611b23565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b81811461265c57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101612624565b508160000361267d57604051622e076360e81b815260040160405180910390fd5b80612686611b23565b55506110d59050565b60008051602061343283398151915254610100900460ff166126c35760405162461bcd60e51b8152600401610ecf9061324b565b816126cc611b23565b600201906126da9082613372565b50806126e4611b23565b600301906126f29082613372565b5060016126fd611b23565b555050565b600054610100900460ff166127295760405162461bcd60e51b8152600401610ecf9061329f565b611199336120d1565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106127715772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061279d576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106127bb57662386f26fc10000830492506010015b6305f5e10083106127d3576305f5e100830492506008015b61271083106127e757612710830492506004015b606483106127f9576064830492506002015b600a83106107335760010192915050565b508054600082556006029060005260206000209081019061190091905b80821115612862576000808255600182018190556002820181905560038201819055600482015560058101805460ff19169055600601612827565b5090565b6001600160e01b03198116811461190057600080fd5b60006020828403121561288e57600080fd5b813561254081612866565b60005b838110156128b457818101518382015260200161289c565b50506000910152565b600081518084526128d5816020860160208601612899565b601f01601f19169290920160200192915050565b60208152600061254060208301846128bd565b6001600160a01b038116811461190057600080fd5b60008083601f84011261292357600080fd5b5081356001600160401b0381111561293a57600080fd5b60208301915083602082850101111561295257600080fd5b9250929050565b60008060008060008060008060008060006101208c8e03121561297b57600080fd5b6129858c356128fc565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff811681146129b257600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d01358110156129db57600080fd5b6129eb8e60e08f01358f01612911565b90955093506101008d0135811015612a0257600080fd5b50612a148d6101008e01358e01612911565b81935080925050509295989b509295989b9093969950565b600060208284031215612a3e57600080fd5b5035919050565b60008060408385031215612a5857600080fd5b8235612a63816128fc565b946020939093013593505050565b600080600060608486031215612a8657600080fd5b8335612a91816128fc565b92506020840135612aa1816128fc565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612ae257612ae2612ab2565b604051601f8501601f19908116603f01168101908282118183101715612b0a57612b0a612ab2565b81604052809350858152868686011115612b2357600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612b5557600080fd5b8535612b60816128fc565b94506020860135612b70816128fc565b93506040860135612b80816128fc565b92506060860135612b90816128fc565b915060808601356001600160401b03811115612bab57600080fd5b8601601f81018813612bbc57600080fd5b612bcb88823560208401612ac8565b9150509295509295909350565b600080600080600080600060a0888a031215612bf357600080fd5b8735612bfe816128fc565b9650602088013595506040880135945060608801356001600160401b0380821115612c2857600080fd5b612c348b838c01612911565b909650945060808a0135915080821115612c4d57600080fd5b50612c5a8a828b01612911565b989b979a50959850939692959293505050565b60008060208385031215612c8057600080fd5b82356001600160401b03811115612c9657600080fd5b612ca285828601612911565b90969095509350505050565b600060208284031215612cc057600080fd5b8135612540816128fc565b600080600080600080600060c0888a031215612ce657600080fd5b87359650602088013595506040880135612cff816128fc565b94506060880135612d0f816128fc565b93506080880135612d1f816128fc565b925060a08801356001600160401b03811115612d3a57600080fd5b612c5a8a828b01612911565b801515811461190057600080fd5b60008060408385031215612d6757600080fd5b8235612d72816128fc565b91506020830135612d8281612d46565b809150509250929050565b60008060208385031215612da057600080fd5b82356001600160401b0380821115612db757600080fd5b818501915085601f830112612dcb57600080fd5b813581811115612dda57600080fd5b86602060c083028501011115612def57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612e1757600080fd5b8435612e22816128fc565b93506020850135612e32816128fc565b92506040850135915060608501356001600160401b03811115612e5457600080fd5b8501601f81018713612e6557600080fd5b612e7487823560208401612ac8565b91505092959194509250565b60008060408385031215612e9357600080fd5b8235612e9e816128fc565b91506020830135612d82816128fc565b600181811c90821680612ec257607f821691505b6020821081036116a257634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761073357610733612ef8565b60008060408385031215612f3857600080fd5b8251612f43816128fc565b6020939093015192949293505050565b600060208284031215612f6557600080fd5b5051919050565b600082612f8957634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561073357610733612ef8565b600060208284031215612fb357600080fd5b815161254081612d46565b601f8211156110d557600081815260208120601f850160051c81016020861015612fe55750805b601f850160051c820191505b81811015610bb657828155600101612ff1565b6001600160401b0383111561301b5761301b612ab2565b61302f836130298354612eae565b83612fbe565b6000601f841160018114613063576000851561304b5750838201355b600019600387901b1c1916600186901b178355610bb8565b600083815260209020601f19861690835b828110156130945786850135825560209485019460019092019101613074565b50868210156130b15760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b8152600082516130e0816002850160208701612899565b9190910160020192915050565b600060c082840312156130ff57600080fd5b60405160c081018181106001600160401b038211171561312157613121612ab2565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561316081612d46565b60a08201529392505050565b60006001820161317e5761317e612ef8565b5060010190565b60008251613197818460208701612899565b9190910192915050565b600083516131b3818460208801612899565b8351908301906131c7818360208801612899565b01949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b038681168252851660208201526040810184905260806060820181905260009061322d90830184866131d0565b979650505050505050565b8082018082111561073357610733612ef8565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061331d908301846128bd565b9695505050505050565b60006020828403121561333957600080fd5b815161254081612866565b6001600160a01b038416815260406020820181905260009061336990830184866131d0565b95945050505050565b81516001600160401b0381111561338b5761338b612ab2565b61339f816133998454612eae565b84612fbe565b602080601f8311600181146133d457600084156133bc5750858301515b600019600386901b1c1916600185901b178555610bb6565b600085815260208120601f198616915b82811015613403578886015182559484019460019091019084016133e4565b50858210156134215787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa26469706673582212203aabe44c2c1beaefd8e913364be7982fe9ebedd320dbc00c62dcd64b800e7bbd64736f6c63430008130033", + "nonce": "0x4f4", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x2644ab5f1ef6fb1b5f01818885f0ee539409db27dad3686f64a81e351fed16b5", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0x7A700EeF6Abf340DF822202730ce1CcC807B575e", + "function": null, + "arguments": [], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x1f76b5", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611b41806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106102115760003560e01c80637d2405bb11610125578063b7dd8d20116100ad578063d547741f1161007c578063d547741f14610494578063d57f966b146104a7578063d8f4b6fd146104b0578063f339b08e146104c5578063fdbda0ec146104d857600080fd5b8063b7dd8d2014610446578063ba4f11c914610459578063bdd2fe781461046c578063cfc5a0c01461047f57600080fd5b80638e837abf116100f45780638e837abf146103f257806391d148541461040557806398eaa0c0146104185780639f1fb80d1461042b578063a217fddf1461043e57600080fd5b80637d2405bb146103a6578063832ca2f5146103b957806385be1c15146103cc5780638d058ac8146103df57600080fd5b806336568abe116101a85780634eb6b7f6116101775780634eb6b7f614610347578063641254bd1461035a578063678213491461036d5780636b7e3949146103805780636cc82b841461039357600080fd5b806336568abe146102fb5780634128541c1461030e57806347fcac3b146103215780634c7dfac31461033457600080fd5b80631ce6e444116101e45780631ce6e444146102915780631e5b3684146102a4578063248a9ca3146102b75780632f2ff15d146102e857600080fd5b806301ffc9a7146102165780631459457a1461023e57806318c25d8a146102535780631c8518c214610266575b600080fd5b61022961022436600461161d565b61050b565b60405190151581526020015b60405180910390f35b61025161024c36600461165e565b610542565b005b6102516102613660046116c3565b6106c3565b609b54610279906001600160a01b031681565b6040516001600160a01b039091168152602001610235565b609a54610279906001600160a01b031681565b6102516102b23660046116ed565b61083d565b6102da6102c53660046116ed565b60009081526065602052604090206001015490565b604051908152602001610235565b6102516102f6366004611706565b6108ef565b610251610309366004611706565b610914565b609854610279906001600160a01b031681565b61027961032f3660046116c3565b610992565b610229610342366004611732565b6109a6565b609e54610279906001600160a01b031681565b610251610368366004611732565b6109c0565b61025161037b36600461174d565b6109ee565b61025161038e366004611732565b610ad6565b609954610279906001600160a01b031681565b6102516103b4366004611732565b610b06565b6102516103c7366004611732565b610b34565b6102516103da366004611706565b610b62565b6102796103ed3660046116ed565b610be8565b610251610400366004611732565b610c02565b610229610413366004611706565b610c30565b610279610426366004611789565b610c5b565b61025161043936600461184e565b610c8f565b6102da600081565b6102516104543660046118b4565b610dc0565b6102da610467366004611732565b610e94565b609c54610279906001600160a01b031681565b6102da600080516020611acc83398151915281565b6102516104a2366004611706565b610f32565b6102da609d5481565b6102da600080516020611aec83398151915281565b6102796104d33660046116ed565b610f57565b6104eb6104e63660046116ed565b610f81565b604080516001600160a01b03938416815292909116602083015201610235565b60006001600160e01b03198216637965db0b60e01b148061053c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156105625750600054600160ff909116105b8061057c5750303b15801561057c575060005460ff166001145b6105e45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610607576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d5561066a610fba565b610675600033611027565b80156106bb576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b600080516020611acc8339815191526106db81611031565b6127108211156106fe57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661072557604051632627b42d60e11b815260040160405180910390fd5b609c5460009061073d906001600160a01b031661103e565b609854609e5460405163c0c53b8b60e01b81526001600160a01b0388811660048301529283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561079957600080fd5b505af11580156107ad573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b9199150606401600060405180830381600087803b15801561080757600080fd5b505af115801561081b573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856110d8565b50505050565b600080516020611aec83398151915261085581611031565b609b5460009061086e906001600160a01b03168461115e565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b1580156108c857600080fd5b505af11580156108dc573d6000803e3d6000fd5b505050506108ea81336111fb565b505050565b60008281526065602052604090206001015461090a81611031565b6108ea83836110d8565b6001600160a01b03811633146109845760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016105db565b61098e8282611353565b5050565b600061099f8383306113ba565b9392505050565b600061053c600080516020611aec83398151915283610c30565b60006109cb81611031565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b600080516020611acc833981519152610a0681611031565b612710821115610a2957604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b038416610a5057604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b91990606401600060405180830381600087803b158015610aa657600080fd5b505af1158015610aba573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856108ef565b600080516020611acc833981519152610aee81611031565b61098e600080516020611aec83398151915283610f32565b6000610b1181611031565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b3f81611031565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b6d81611031565b81609f8481548110610b8157610b81611904565b60009182526020918290200180546001600160a01b0319166001600160a01b0393841617905560408051868152928516918301919091527f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a1505050565b609b5460009061053c906001600160a01b031683306113ba565b6000610c0d81611031565b50609e80546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600061099f609f8481548110610c7357610c73611904565b6000918252602090912001546001600160a01b031683306113ba565b600080516020611acc833981519152610ca781611031565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610cf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d15919061191a565b610d3257604051634f3bd42760e01b815260040160405180910390fd5b6000610d3e868461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610d84948c9491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610d9e57600080fd5b505af1158015610db2573d6000803e3d6000fd5b505050506106bb81866111fb565b600080516020611aec833981519152610dd881611031565b6000610e0b609f8681548110610df057610df0611904565b6000918252602090912001546001600160a01b03168461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610e5194339491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610e6b57600080fd5b505af1158015610e7f573d6000803e3d6000fd5b50505050610e8d81336111fb565b5050505050565b600080610ea081611031565b609f80546001810182556000919091527f0bc14066c33013fe88f66e314e4cf150b0b2d4d6451a1a51dbbd1c27cd11de28810180546001600160a01b0319166001600160a01b0386169081179091556040805183815260208101929092529193507f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a150919050565b600082815260656020526040902060010154610f4d81611031565b6108ea8383611353565b609f8181548110610f6757600080fd5b6000918252602090912001546001600160a01b0316905081565b60978181548110610f9157600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff166110255760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016105db565b565b61098e82826110d8565b61103b8133611416565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b0381166110d35760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b60448201526064016105db565b919050565b6110e28282610c30565b61098e5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561111a3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b03811661053c5760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c656400000000000000000060448201526064016105db565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c906112d19085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b1580156112eb57600080fd5b505af11580156112ff573d6000803e3d6000fd5b50505050609d60008154611312906119e9565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b61135d8282610c30565b1561098e5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6114208282610c30565b61098e5761142d8161146f565b611438836020611481565b604051602001611449929190611a02565b60408051601f198184030181529082905262461bcd60e51b82526105db91600401611a77565b606061053c6001600160a01b03831660145b60606000611490836002611a8a565b61149b906002611aa1565b67ffffffffffffffff8111156114b3576114b36117ab565b6040519080825280601f01601f1916602001820160405280156114dd576020820181803683370190505b509050600360fc1b816000815181106114f8576114f8611904565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061152757611527611904565b60200101906001600160f81b031916908160001a905350600061154b846002611a8a565b611556906001611aa1565b90505b60018111156115ce576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061158a5761158a611904565b1a60f81b8282815181106115a0576115a0611904565b60200101906001600160f81b031916908160001a90535060049490941c936115c781611ab4565b9050611559565b50831561099f5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016105db565b60006020828403121561162f57600080fd5b81356001600160e01b03198116811461099f57600080fd5b80356001600160a01b03811681146110d357600080fd5b600080600080600060a0868803121561167657600080fd5b61167f86611647565b945061168d60208701611647565b935061169b60408701611647565b92506116a960608701611647565b91506116b760808701611647565b90509295509295909350565b600080604083850312156116d657600080fd5b6116df83611647565b946020939093013593505050565b6000602082840312156116ff57600080fd5b5035919050565b6000806040838503121561171957600080fd5b8235915061172960208401611647565b90509250929050565b60006020828403121561174457600080fd5b61099f82611647565b60008060006060848603121561176257600080fd5b61176b84611647565b925061177960208501611647565b9150604084013590509250925092565b6000806040838503121561179c57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126117d257600080fd5b813567ffffffffffffffff808211156117ed576117ed6117ab565b604051601f8301601f19908116603f01168101908282118183101715611815576118156117ab565b8160405283815286602085880101111561182e57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561186457600080fd5b61186d85611647565b935061187b60208601611647565b9250604085013567ffffffffffffffff81111561189757600080fd5b6118a3878288016117c1565b949793965093946060013593505050565b6000806000606084860312156118c957600080fd5b83359250602084013567ffffffffffffffff8111156118e757600080fd5b6118f3868287016117c1565b925050604084013590509250925092565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561192c57600080fd5b8151801515811461099f57600080fd5b60005b8381101561195757818101518382015260200161193f565b50506000910152565b6000815180845261197881602086016020860161193c565b601f01601f19169290920160200192915050565b6001600160a01b038681168252858116602083015284811660408301528316606082015260a0608082018190526000906119c890830184611960565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016119fb576119fb6119d3565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611a3a81601785016020880161193c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611a6b81602884016020880161193c565b01602801949350505050565b60208152600061099f6020830184611960565b808202811582820484141761053c5761053c6119d3565b8082018082111561053c5761053c6119d3565b600081611ac357611ac36119d3565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220bf7faf033458943f1f81d983fa6efeed9fc4cf72c12acec8503359cc4e9c8f6864736f6c63430008130033", + "nonce": "0x4f5", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0x1d5a0535ad40e6afd71b5ffaba7ec76a7c0c26f7585e91f5a2fb1c37df6833a0", + "transactionIndex": "0x1", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0xca9f1", + "gasUsed": "0xbaffc", + "contractAddress": "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "logs": [ + { + "address": "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x1d5a0535ad40e6afd71b5ffaba7ec76a7c0c26f7585e91f5a2fb1c37df6833a0", + "transactionIndex": "0x1", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x169069", + "gasUsed": "0x9e678", + "contractAddress": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "logs": [ + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", + "0x000000000000000000000000a4f3f987bebf7786fdc7147856be776fbd26029b" + ], + "data": "0x", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x1", + "removed": false + }, + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "0x000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "data": "0x", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x2", + "removed": false + }, + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x3", + "removed": false + }, + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f" + ], + "data": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb76", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x4", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000004000000000000000200000000400000000000000000000000000000020400000000000000000000000000000000000000000000000000000000000000000400000000000000000000004002020000000000000000000000000000000000000000020000000000000000000800000000800000000000000000000000000000002000000000000000000040000000000000000080000000000000800000000000000000000000000000000400000000000000000000001000000000000000000020000000000000000000040000000000000400000100000000000020000000000000000000000000000400000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0xa247a9ee6a1e0eb7f2695a60e052a8a098a454f0b9648c5e30609d6314766039", + "transactionIndex": "0x3", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x38ee9f", + "gasUsed": "0x225e36", + "contractAddress": "0x67eE62b7C507960Ea2d0e900F391eB1856723a88", + "logs": [ + { + "address": "0x67eE62b7C507960Ea2d0e900F391eB1856723a88", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0xa247a9ee6a1e0eb7f2695a60e052a8a098a454f0b9648c5e30609d6314766039", + "transactionIndex": "0x3", + "logIndex": "0x5", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000080000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000100000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0x0b2d706956e4a636da4bd672e0784bcd7645e4c8b9d6d3eac61581d7749558b9", + "transactionIndex": "0x4", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x67f0a5", + "gasUsed": "0x2f0206", + "contractAddress": "0xa765c364f57598f4175Cd482694a2934fD408CF9", + "logs": [ + { + "address": "0xa765c364f57598f4175Cd482694a2934fD408CF9", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x0b2d706956e4a636da4bd672e0784bcd7645e4c8b9d6d3eac61581d7749558b9", + "transactionIndex": "0x4", + "logIndex": "0x6", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000020000080000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0xd2dd252aa53fa8d07f148b36ad079374acf52e2f2d5a75850d30edf1e22399ae", + "transactionIndex": "0x5", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x957908", + "gasUsed": "0x2d8863", + "contractAddress": "0x12905691B20F5045EC76cC0be411199051206230", + "logs": [ + { + "address": "0x12905691B20F5045EC76cC0be411199051206230", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0xd2dd252aa53fa8d07f148b36ad079374acf52e2f2d5a75850d30edf1e22399ae", + "transactionIndex": "0x5", + "logIndex": "0x7", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000002000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000040000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0x2644ab5f1ef6fb1b5f01818885f0ee539409db27dad3686f64a81e351fed16b5", + "transactionIndex": "0x1", + "blockHash": "0xc5486837e8abe7bf303bf7e9dbfebaf6ac8b99619b862c7c522bf1cd9a876f7b", + "blockNumber": "0xd357bd", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x18ecdb", + "gasUsed": "0x1835b2", + "contractAddress": "0x7A700EeF6Abf340DF822202730ce1CcC807B575e", + "logs": [ + { + "address": "0x7A700EeF6Abf340DF822202730ce1CcC807B575e", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xc5486837e8abe7bf303bf7e9dbfebaf6ac8b99619b862c7c522bf1cd9a876f7b", + "blockNumber": "0xd357bd", + "transactionHash": "0x2644ab5f1ef6fb1b5f01818885f0ee539409db27dad3686f64a81e351fed16b5", + "transactionIndex": "0x1", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f00" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1702894733, + "chain": 84531, + "multi": false, + "commit": "fb90636" +} \ No newline at end of file diff --git a/broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894749.json b/broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894749.json new file mode 100644 index 0000000..e17323a --- /dev/null +++ b/broadcast/deploy-kyc-upgrade.s.sol/84531/run-1702894749.json @@ -0,0 +1,354 @@ +{ + "transactions": [ + { + "hash": "0x1d5a0535ad40e6afd71b5ffaba7ec76a7c0c26f7585e91f5a2fb1c37df6833a0", + "transactionType": "CREATE", + "contractName": "ABRoyaltyTestData", + "contractAddress": "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0xf307e", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b610c68806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063627cdcb9116100a2578063ccac2c1311610071578063ccac2c131461022b578063cfc5a0c01461023e578063d547741f14610265578063e83931af14610278578063f2c526bc1461016357600080fd5b8063627cdcb9146101f557806391d14854146101fd578063a217fddf14610210578063c4d66de81461021857600080fd5b80632f2ff15d116100de5780632f2ff15d146101a957806336568abe146101bc578063437a0de9146101cf5780634a96535b146101e257600080fd5b806301ffc9a7146101105780631180b553146101385780631723576414610163578063248a9ca314610178575b600080fd5b61012361011e366004610977565b610289565b60405190151581526020015b60405180910390f35b61014b6101463660046109bd565b6102c0565b6040516001600160a01b03909116815260200161012f565b6101766101713660046109d8565b505050565b005b61019b610186366004610a5b565b60009081526065602052604090206001015490565b60405190815260200161012f565b6101766101b7366004610a74565b6102cb565b6101766101ca366004610a74565b6102f0565b60975461014b906001600160a01b031681565b6101766101f03660046109bd565b610373565b6101766103a1565b61012361020b366004610a74565b6103c2565b61019b600081565b6101766102263660046109bd565b6103ed565b610176610239366004610aa0565b61054b565b61019b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b610176610273366004610a74565b6105a4565b6101766102863660046109bd565b50565b60006001600160e01b03198216637965db0b60e01b14806102ba57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006102ba826105c9565b6000828152606560205260409020600101546102e6816105fb565b6101718383610605565b6001600160a01b03811633146103655760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61036f828261068b565b5050565b600061037e816105fb565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006103ac816105fb565b6099600081546103bb90610ae0565b9091555050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600054610100900460ff161580801561040d5750600054600160ff909116105b806104275750303b158015610427575060005460ff166001145b61048a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161035c565b6000805460ff1916600117905580156104ad576000805461ff0019166101001790555b6001600160a01b0382166104d457604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b0384161790556104f76106f2565b61050260003361075f565b801561036f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e610575816105fb565b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b6000828152606560205260409020600101546105bf816105fb565b610171838361068b565b6097546001600160a01b03828116600090815260986020526040902054918116911680156105f5578091505b50919050565b6102868133610769565b61060f82826103c2565b61036f5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556106473390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61069582826103c2565b1561036f5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600054610100900460ff1661075d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161035c565b565b61036f8282610605565b61077382826103c2565b61036f57610780816107c2565b61078b8360206107d4565b60405160200161079c929190610b1d565b60408051601f198184030181529082905262461bcd60e51b825261035c91600401610b92565b60606102ba6001600160a01b03831660145b606060006107e3836002610bc5565b6107ee906002610bdc565b67ffffffffffffffff81111561080657610806610bef565b6040519080825280601f01601f191660200182016040528015610830576020820181803683370190505b509050600360fc1b8160008151811061084b5761084b610c05565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061087a5761087a610c05565b60200101906001600160f81b031916908160001a905350600061089e846002610bc5565b6108a9906001610bdc565b90505b6001811115610921576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106108dd576108dd610c05565b1a60f81b8282815181106108f3576108f3610c05565b60200101906001600160f81b031916908160001a90535060049490941c9361091a81610c1b565b90506108ac565b5083156109705760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161035c565b9392505050565b60006020828403121561098957600080fd5b81356001600160e01b03198116811461097057600080fd5b80356001600160a01b03811681146109b857600080fd5b919050565b6000602082840312156109cf57600080fd5b610970826109a1565b6000806000604084860312156109ed57600080fd5b6109f6846109a1565b9250602084013567ffffffffffffffff80821115610a1357600080fd5b818601915086601f830112610a2757600080fd5b813581811115610a3657600080fd5b876020828501011115610a4857600080fd5b6020830194508093505050509250925092565b600060208284031215610a6d57600080fd5b5035919050565b60008060408385031215610a8757600080fd5b82359150610a97602084016109a1565b90509250929050565b60008060408385031215610ab357600080fd5b610abc836109a1565b9150610a97602084016109a1565b634e487b7160e01b600052601160045260246000fd5b600060018201610af257610af2610aca565b5060010190565b60005b83811015610b14578181015183820152602001610afc565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351610b55816017850160208801610af9565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351610b86816028840160208801610af9565b01602801949350505050565b6020815260008251806020840152610bb1816040850160208701610af9565b601f01601f19169190910160400192915050565b80820281158282048414176102ba576102ba610aca565b808201808211156102ba576102ba610aca565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081610c2a57610c2a610aca565b50600019019056fea264697066735822122040236fb5a9f8d37d1dbed1e02d2c9cb8d0ce3408a1a8bc4db48fc822e65a260164736f6c63430008130033", + "nonce": "0x4f0", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "function": null, + "arguments": [ + "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "0x305D807d22070DfFF295f5575eCD354f72c2eB76", + "0xc4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0xcdd9f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000a4f3f987bebf7786fdc7147856be776fbd26029b000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb7600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x4f1", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xa247a9ee6a1e0eb7f2695a60e052a8a098a454f0b9648c5e30609d6314766039", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0x67eE62b7C507960Ea2d0e900F391eB1856723a88", + "function": null, + "arguments": [], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x2caa67", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61274b80620000f46000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806378c5195e11610104578063b08805a5116100a2578063d518b7ff11610071578063d518b7ff14610470578063d547741f14610483578063df3d053b14610496578063f8372320146104a957600080fd5b8063b08805a5146103f8578063b81155b51461040b578063c0c53b8b14610448578063cfc5a0c01461045b57600080fd5b806391d14854116100de57806391d14854146103a15780639ab29f2b146103b4578063a217fddf146103c7578063a626f573146103cf57600080fd5b806378c5195e146103685780638c72c54e1461037b5780638fd1101c1461038e57600080fd5b806336568abe1161017c5780634e4345921161014b5780634e434592146103155780634eb6b7f6146103285780636ce10ab61461033b578063754b377c1461034e57600080fd5b806336568abe146102c757806342f1e879146102da578063482a61ff146102ef5780634acdd3581461030257600080fd5b80631c44eb4f116101b85780631c44eb4f1461022f5780631d3b405a14610242578063248a9ca3146102835780632f2ff15d146102b457600080fd5b806301ffc9a7146101df57806319c0fab9146102075780631bfb1bb81461021c575b600080fd5b6101f26101ed366004611c44565b6104b2565b60405190151581526020015b60405180910390f35b61021a610215366004611cb9565b6104e9565b005b61021a61022a366004611d52565b610603565b61021a61023d366004611e0c565b6106b5565b61026b610250366004611e77565b6099602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b6102a6610291366004611e77565b60009081526065602052604090206001015490565b6040519081526020016101fe565b61021a6102c2366004611ea5565b610706565b61021a6102d5366004611ea5565b610730565b6102a66000805160206126f683398151915281565b61021a6102fd366004611ed5565b6107b3565b61021a610310366004611f20565b6107c8565b61021a610323366004611f6f565b6107fc565b60985461026b906001600160a01b031681565b61021a610349366004611fe2565b610867565b610356600181565b60405160ff90911681526020016101fe565b6102a6610376366004611ea5565b6108f9565b60975461026b906001600160a01b031681565b61021a61039c366004612023565b610927565b6101f26103af366004611ea5565b61096b565b6102a66103c2366004611ea5565b610996565b6102a6600081565b61026b6103dd366004611e77565b609a602052600090815260409020546001600160a01b031681565b61021a610406366004612069565b6109cd565b61041e610419366004611e77565b6109ef565b604080516001600160801b03948516815292841660208401529216918101919091526060016101fe565b61021a61045636600461208b565b610a24565b6102a66000805160206126d683398151915281565b61021a61047e3660046120d6565b610b96565b61021a610491366004611ea5565b610c70565b61021a6104a4366004612159565b610c95565b6102a66103e881565b60006001600160e01b03198216637965db0b60e01b14806104e357506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000805160206126d683398151915261050181610d39565b83868380831461052457604051632627b42d60e11b815260040160405180910390fd5b60005b838110156105f65761058289898381811061054457610544612187565b9050602002016020810190610559919061219d565b88888481811061056b5761056b612187565b905060200281019061057d91906121ba565b610d46565b60005b838110156105e5576105d58c8c838181106105a2576105a2612187565b905060200201358b8b858181106105bb576105bb612187565b90506020020160208101906105d0919061219d565b610daf565b6105de81612216565b9050610585565b506105ef81612216565b9050610527565b5050505050505050505050565b6000805160206126d683398151915261061b81610d39565b838280821461063d57604051632627b42d60e11b815260040160405180910390fd5b60005b828110156106aa5761068488888381811061065d5761065d612187565b9050602002016020810190610672919061219d565b87878481811061056b5761056b612187565b61069a898989848181106105bb576105bb612187565b6106a381612216565b9050610640565b505050505050505050565b6106c0338383610d46565b8260005b818110156106fe576106ee8686838181106106e1576106e1612187565b9050602002013533610daf565b6106f781612216565b90506106c4565b505050505050565b60008281526065602052604090206001015461072181610d39565b61072b8383610dd3565b505050565b6001600160a01b03811633146107a55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107af8282610e59565b5050565b6107be338383610d46565b61072b8333610daf565b6000805160206126d68339815191526107e081610d39565b6107eb848484610d46565b6107f58585610daf565b5050505050565b6000805160206126d683398151915261081481610d39565b61081f848484610d46565b8460005b8181101561085d5761084d88888381811061084057610840612187565b9050602002013587610daf565b61085681612216565b9050610823565b5050505050505050565b6000805160206126f683398151915261087f81610d39565b60006108946001600160a01b03851684610ec0565b9050806108b457604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260996020908152604080832080546001600160a01b039687166001600160a01b031991821617909155609a9092529091208054929093169116179055565b6000828152609a602052604081205461091d906001600160a01b0316308585610fe5565b9695505050505050565b6000805160206126f683398151915261093f81610d39565b61095585846109506103e88661222f565b611094565b6107f584846109666103e88661222f565b611145565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000828152609a60205260408120546109ba906001600160a01b0316308585610fe5565b506001600160801b031695945050505050565b6000805160206126f68339815191526109e581610d39565b61072b838361119b565b6000818152609a602052604081205481908190610a16906001600160a01b03163086611225565b919790965090945092505050565b600054610100900460ff1615808015610a445750600054600160ff909116105b80610a5e5750303b158015610a5e575060005460ff166001145b610ac15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161079c565b6000805460ff191660011790558015610ae4576000805461ff0019166101001790555b610aec6112cb565b610af7600085610dd3565b610b02600033610e59565b610b1a6000805160206126f683398151915284610dd3565b609880546001600160a01b038085166001600160a01b03199283161790925560978054928716929091169190911790558015610b90576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000805160206126f6833981519152610bae81610d39565b83828114610bcf57604051632627b42d60e11b815260040160405180910390fd5b60005b818110156106aa57610c1d89888884818110610bf057610bf0612187565b905060200201356103e8888886818110610c0c57610c0c612187565b90506020020135610950919061222f565b610c6088888884818110610c3357610c33612187565b905060200201356103e8888886818110610c4f57610c4f612187565b90506020020135610966919061222f565b610c6981612216565b9050610bd2565b600082815260656020526040902060010154610c8b81610d39565b61072b8383610e59565b6000610ca081610d39565b81610d2f576000848152609a6020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610d09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2d9190612246565b505b610b90848461119b565b610d438133611338565b50565b6098546040516305c8d5d960e21b81526001600160a01b0390911690631723576490610d7a90869086908690600401612263565b60006040518083038186803b158015610d9257600080fd5b505afa158015610da6573d6000803e3d6000fd5b50505050505050565b6000828152609a602052604090205461072b906001600160a01b0316308484611391565b610ddd828261096b565b6107af5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610e153390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610e63828261096b565b156107af5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610ece856114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610f0c57610f0c6122a3565b6040519080825280601f01601f191660200182016040528015610f36576020820181803683370190505b50604051602401610f4993929190612309565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610f9293925090600401612342565b6000604051808303816000875af1158015610fb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd99190810190612389565b50600195945050505050565b6000806000806000610ff689611683565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa15801561105d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110819190612451565b929c919b50995090975095505050505050565b6001600160a01b0383166110a757505050565b6000828152609a60205260408120546110cb906001600160a01b0316308587610fe5565b506001600160801b031692505050600082826110e791906124a1565b11611116576000838152609a6020526040902054611110906001600160a01b03163085876117e8565b50610b90565b6107f5838561112585856124a1565b6000878152609a60205260409020546001600160a01b0316929190611836565b6001600160a01b03831661115857505050565b6000828152609a602052604081205461117c906001600160a01b0316308587610fe5565b506001600160801b0316925050506107f58385848461112591906124b4565b6000828152609a60205260408120546111bf906001600160a01b03163085856118c3565b506000848152609a60205260409020549091506111e6906001600160a01b03168483611968565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910160405180910390a1505050565b600080600080600061123688611683565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b991906124c7565b94509450945094505093509350935093565b600054610100900460ff166113365760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161079c565b565b611342828261096b565b6107af5761134f81611a90565b61135a836020611aa2565b60405160200161136b92919061251d565b60408051601f198184030181529082905262461bcd60e51b825261079c91600401612592565b600080600061139f876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b038111156113df576113df6122a3565b6040519080825280601f01601f191660200182016040528015611409576020820181803683370190505b5060405160240161141e9594939291906125a5565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261146793925090600401612342565b6000604051808303816000875af1158015611486573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114ae9190810190612389565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661158157826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa15801561155a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061157e91906125e5565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156115e5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061160991906125e5565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b03821661166857611668612602565b6001600160a01b03811661167e5761167e612602565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661174857826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611721573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061174591906125e5565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156117ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d091906125e5565b90506001600160a01b03821661166857611668612602565b60008060006117f6876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b038111156113df576113df6122a3565b6000806000611844876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b03811115611884576118846122a3565b6040519080825280601f01601f1916602001820160405280156118ae576020820181803683370190505b5060405160240161141e959493929190612618565b60008060006118d187611683565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa158015611936573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195a919061265f565b925092505094509492505050565b6000806000611976866114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b038111156119b5576119b56122a3565b6040519080825280601f01601f1916602001820160405280156119df576020820181803683370190505b506040516024016119f3949392919061268b565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252611a3c93925090600401612342565b6000604051808303816000875af1158015611a5b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a839190810190612389565b5060019695505050505050565b60606104e36001600160a01b03831660145b60606000611ab183600261222f565b611abc9060026124b4565b6001600160401b03811115611ad357611ad36122a3565b6040519080825280601f01601f191660200182016040528015611afd576020820181803683370190505b509050600360fc1b81600081518110611b1857611b18612187565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611b4757611b47612187565b60200101906001600160f81b031916908160001a9053506000611b6b84600261222f565b611b769060016124b4565b90505b6001811115611bee576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611baa57611baa612187565b1a60f81b828281518110611bc057611bc0612187565b60200101906001600160f81b031916908160001a90535060049490941c93611be7816126be565b9050611b79565b508315611c3d5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161079c565b9392505050565b600060208284031215611c5657600080fd5b81356001600160e01b031981168114611c3d57600080fd5b60008083601f840112611c8057600080fd5b5081356001600160401b03811115611c9757600080fd5b6020830191508360208260051b8501011115611cb257600080fd5b9250929050565b60008060008060008060608789031215611cd257600080fd5b86356001600160401b0380821115611ce957600080fd5b611cf58a838b01611c6e565b90985096506020890135915080821115611d0e57600080fd5b611d1a8a838b01611c6e565b90965094506040890135915080821115611d3357600080fd5b50611d4089828a01611c6e565b979a9699509497509295939492505050565b600080600080600060608688031215611d6a57600080fd5b8535945060208601356001600160401b0380821115611d8857600080fd5b611d9489838a01611c6e565b90965094506040880135915080821115611dad57600080fd5b50611dba88828901611c6e565b969995985093965092949392505050565b60008083601f840112611ddd57600080fd5b5081356001600160401b03811115611df457600080fd5b602083019150836020828501011115611cb257600080fd5b60008060008060408587031215611e2257600080fd5b84356001600160401b0380821115611e3957600080fd5b611e4588838901611c6e565b90965094506020870135915080821115611e5e57600080fd5b50611e6b87828801611dcb565b95989497509550505050565b600060208284031215611e8957600080fd5b5035919050565b6001600160a01b0381168114610d4357600080fd5b60008060408385031215611eb857600080fd5b823591506020830135611eca81611e90565b809150509250929050565b600080600060408486031215611eea57600080fd5b8335925060208401356001600160401b03811115611f0757600080fd5b611f1386828701611dcb565b9497909650939450505050565b60008060008060608587031215611f3657600080fd5b843593506020850135611f4881611e90565b925060408501356001600160401b03811115611f6357600080fd5b611e6b87828801611dcb565b600080600080600060608688031215611f8757600080fd5b85356001600160401b0380821115611f9e57600080fd5b611faa89838a01611c6e565b909750955060208801359150611fbf82611e90565b90935060408701359080821115611fd557600080fd5b50611dba88828901611dcb565b600080600060608486031215611ff757600080fd5b833561200281611e90565b9250602084013561201281611e90565b929592945050506040919091013590565b6000806000806080858703121561203957600080fd5b843561204481611e90565b9350602085013561205481611e90565b93969395505050506040820135916060013590565b6000806040838503121561207c57600080fd5b50508035926020909101359150565b6000806000606084860312156120a057600080fd5b83356120ab81611e90565b925060208401356120bb81611e90565b915060408401356120cb81611e90565b809150509250925092565b600080600080600080608087890312156120ef57600080fd5b86356120fa81611e90565b9550602087013561210a81611e90565b945060408701356001600160401b038082111561212657600080fd5b6121328a838b01611c6e565b90965094506060890135915080821115611d3357600080fd5b8015158114610d4357600080fd5b60008060006060848603121561216e57600080fd5b833592506020840135915060408401356120cb8161214b565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156121af57600080fd5b8135611c3d81611e90565b6000808335601e198436030181126121d157600080fd5b8301803591506001600160401b038211156121eb57600080fd5b602001915036819003821315611cb257600080fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161222857612228612200565b5060010190565b80820281158282048414176104e3576104e3612200565b60006020828403121561225857600080fd5b8151611c3d8161214b565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156122d45781810151838201526020016122bc565b50506000910152565b600081518084526122f58160208601602086016122b9565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090612339908301846122dd565b95945050505050565b6001600160a01b0383168152606060208201819052600090612366908301846122dd565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b60006020828403121561239b57600080fd5b81516001600160401b03808211156123b257600080fd5b818401915084601f8301126123c657600080fd5b8151818111156123d8576123d86122a3565b604051601f8201601f19908116603f01168101908382118183101715612400576124006122a3565b8160405282815287602084870101111561241957600080fd5b61242a8360208301602088016122b9565b979650505050505050565b80516001600160801b038116811461244c57600080fd5b919050565b6000806000806080858703121561246757600080fd5b84516124728161214b565b60208601519094506124838161214b565b925061249160408601612435565b6060959095015193969295505050565b818103818111156104e3576104e3612200565b808201808211156104e3576104e3612200565b600080600080608085870312156124dd57600080fd5b84516124e88161214b565b93506124f660208601612435565b925061250460408601612435565b915061251260608601612435565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516125558160178501602088016122b9565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516125868160288401602088016122b9565b01602801949350505050565b602081526000611c3d60208301846122dd565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061242a908301846122dd565b6000602082840312156125f757600080fd5b8151611c3d81611e90565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061242a908301846122dd565b6000806040838503121561267257600080fd5b8251915061268260208401612435565b90509250929050565b60018060a01b038516815263ffffffff8416602082015282604082015260806060820152600061091d60808301846122dd565b6000816126cd576126cd612200565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca26469706673582212202cf747c17ad27ef3d17cee929f2bd07e1aa1ad70bb10abbafad36fd69d82ff2a64736f6c63430008130033", + "nonce": "0x4f2", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x0b2d706956e4a636da4bd672e0784bcd7645e4c8b9d6d3eac61581d7749558b9", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0xa765c364f57598f4175Cd482694a2934fD408CF9", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x3d17bd", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61364680620000f46000396000f3fe6080604052600436106102465760003560e01c806366748e9811610139578063a1db9782116100b6578063cb22e01b1161007a578063cb22e01b146106e0578063d5abeb01146106f3578063de7ecf8714610709578063e985e9c51461071f578063f2fde38b1461073f578063fe325e961461075f57600080fd5b8063a1db97821461064d578063a22cb4651461066d578063aa10820e1461068d578063b88d4fde146106ad578063c87b56dd146106c057600080fd5b8063715018a6116100fd578063715018a6146105be578063754b377c146105d35780638c72c54e146105fa5780638da5cb5b1461061a57806395d89b411461063857600080fd5b806366748e98146105065780636cc82b841461053e5780636dbdaae61461055e5780636f8b44b01461057e57806370a082311461059e57600080fd5b80632e37eef6116101c7578063493548441161018b57806349354844146104525780634b102262146104725780634c5dffea146104a657806355f804b3146104c65780636352211e146104e657600080fd5b80632e37eef6146103905780632fb3b361146103df5780634128541c146103ff57806342842e0e1461041f578063430ab18f1461043257600080fd5b8063180f1ea31161020e578063180f1ea31461030f57806318160ddd146103245780631c6d76751461034757806323b872dd146103675780632a778c9b1461037a57600080fd5b806301ffc9a71461024b57806306fdde0314610280578063075834cb146102a2578063081812fc146102c4578063095ea7b3146102fc575b600080fd5b34801561025757600080fd5b5061026b610266366004612a1f565b610774565b60405190151581526020015b60405180910390f35b34801561028c57600080fd5b50610295610785565b6040516102779190612a8c565b3480156102ae57600080fd5b506102c26102bd366004612afc565b610820565b005b3480156102d057600080fd5b506102e46102df366004612bcf565b610917565b6040516001600160a01b039091168152602001610277565b6102c261030a366004612be8565b610964565b34801561031b57600080fd5b506102c2610974565b34801561033057600080fd5b50610339610c0b565b604051908152602001610277565b34801561035357600080fd5b506069546102e4906001600160a01b031681565b6102c2610375366004612c14565b610c2b565b34801561038657600080fd5b50610339606a5481565b34801561039c57600080fd5b506103b06103ab366004612bcf565b610e2b565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610277565b3480156103eb57600080fd5b506102c26103fa366004612ce0565b610e74565b34801561040b57600080fd5b506065546102e4906001600160a01b031681565b6102c261042d366004612c14565b611106565b34801561043e57600080fd5b506102c261044d366004612d7b565b611126565b34801561045e57600080fd5b506067546102e4906001600160a01b031681565b34801561047e57600080fd5b506103397f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156104b257600080fd5b506102c26104c1366004612e12565b61116d565b3480156104d257600080fd5b506102c26104e1366004612ea7565b611185565b3480156104f257600080fd5b506102e4610501366004612bcf565b61119a565b34801561051257600080fd5b50610339610521366004612be8565b606e60209081526000928352604080842090915290825290205481565b34801561054a57600080fd5b506066546102e4906001600160a01b031681565b34801561056a57600080fd5b506102c2610579366004612bcf565b6111a5565b34801561058a57600080fd5b506102c2610599366004612bcf565b6111b2565b3480156105aa57600080fd5b506103396105b9366004612ee8565b6111e7565b3480156105ca57600080fd5b506102c261124f565b3480156105df57600080fd5b506105e8600181565b60405160ff9091168152602001610277565b34801561060657600080fd5b506068546102e4906001600160a01b031681565b34801561062657600080fd5b506033546001600160a01b03166102e4565b34801561064457600080fd5b50610295611263565b34801561065957600080fd5b506102c2610668366004612be8565b61129f565b34801561067957600080fd5b506102c2610688366004612f13565b611347565b34801561069957600080fd5b506102c26106a8366004612f4c565b6113c4565b6102c26106bb366004612fc0565b6115b4565b3480156106cc57600080fd5b506102956106db366004612bcf565b6115fe565b6102c26106ee366004612e12565b611759565b3480156106ff57600080fd5b50610339606f5481565b34801561071557600080fd5b50610339606b5481565b34801561072b57600080fd5b5061026b61073a36600461303f565b611995565b34801561074b57600080fd5b506102c261075a366004612ee8565b6119d2565b34801561076b57600080fd5b506102c2611a4b565b600061077f82611c1d565b92915050565b606061078f611c6b565b600201805461079d9061306d565b80601f01602080910402602001604051908101604052809291908181526020018280546107c99061306d565b80156108165780601f106107eb57610100808354040283529160200191610816565b820191906000526020600020905b8154815290600101906020018083116107f957829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061085a5761085a6130a1565b90600052602060002090600602016003015461087691906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b1580156108e357600080fd5b505af11580156108f7573d6000803e3d6000fd5b5050505061090a8b8b8b87878787611c8f565b5050505050505050505050565b600061092282611f40565b61093f576040516333d1c03960e21b815260040160405180910390fd5b610947611c6b565b60009283526006016020525060409020546001600160a01b031690565b61097082826001611f89565b5050565b61097c61203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156109d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fa91906130e4565b90925090506001600160a01b038216610a2657604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a939190613112565b90506000612710610aa484846130cd565b610aae919061312b565b90506000610abc828461314d565b90508015610b5e5760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3c9190613160565b905080610b5c57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c045760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610bbe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be29190613160565b905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610c17611c6b565b60010154610c23611c6b565b540303919050565b6000610c3682612098565b9050836001600160a01b0316816001600160a01b031614610c695760405162a1148160e81b815260040160405180910390fd5b600080610c7584612145565b91509150610c9a8187610c853390565b6001600160a01b039081169116811491141790565b610cc557610ca88633611995565b610cc557604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610cec57604051633a954ecd60e21b815260040160405180910390fd5b610cf9868686600161216d565b8015610d0457600082555b610d0c611c6b565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610d38611c6b565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d6f611c6b565b60008681526004919091016020526040812091909155600160e11b84169003610de55760018401610d9e611c6b565b600082815260049190910160205260408120549003610de357610dbf611c6b565b548114610de35783610dcf611c6b565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610c02565b606d8181548110610e3b57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b6000805160206135f183398151915254610100900460ff16610ea9576000805160206135f18339815191525460ff1615610ead565b303b155b610f245760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b6000805160206135f183398151915254610100900460ff16158015610f60576000805160206135f1833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f805750600054600160ff909116105b80610f9a5750303b158015610f9a575060005460ff166001145b610ffd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610f1b565b6000805460ff191660011790558015611020576000805461ff0019166101001790555b61103983604051806020016040528060008152506121f4565b611041612232565b61104a87612261565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a169290911691909117905580156110df576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610c025750506000805160206135f1833981519152805461ff001916905550505050565b611121838383604051806020016040528060008152506115b4565b505050565b61112e61203e565b606f8890558786111561115457604051632627b42d60e11b815260040160405180910390fd5b611163878787878787876122b3565b5050505050505050565b61117c87878787878787611c8f565b50505050505050565b61118d61203e565b606c6111218284836131c3565b600061077f82612098565b6111ad61203e565b606b55565b6111ba61203e565b6111c26123f6565b8110156111e257604051632627b42d60e11b815260040160405180910390fd5b606f55565b60006001600160a01b038216611210576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611220611c6b565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61125761203e565b6112616000612261565b565b6060606a5460001461129c5761127a606a54612409565b60405160200161128a9190613282565b60405160208183030381529060405290505b90565b6112a761203e565b6069546001600160a01b03908116908316036112d657604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611323573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111219190613160565b80611350611c6b565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113cc61203e565b606d54156113e0576113e0606d60006129ad565b600081815b8181101561157a576000858583818110611401576114016130a1565b905060c0020180360381019061141791906132ac565b9050838160000151108061142f575060208101518151115b1561144d57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506115738161332b565b90506113e5565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6115bf848484610c2b565b6001600160a01b0383163b156115f8576115db8484848461249b565b6115f8576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061160982611f40565b61162657604051632627b42d60e11b815260040160405180910390fd5b6000611630612586565b9050805160000361165257604051806020016040528060008152509150611753565b6040805160018082528183019092526000916020820181803683370190505090508160018351611682919061314d565b81518110611692576116926130a1565b602001015160f81c60f81b816000815181106116b0576116b06130a1565b60200101906001600160f81b031916908160001a905350604051602f60f81b6020820152819060210160405160208183030381529060405280519060200120816040516020016117009190613344565b604051602081830303815290604052805190602001200361174c578261172586612595565b604051602001611736929190613360565b6040516020818303038152906040529350611750565b8293505b50505b50919050565b6117648783836125d9565b61176d86612639565b61178a576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061179f5761179f6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f54909150866118086123f6565b611812919061338f565b1115611831576040516322eb5e9560e21b815260040160405180910390fd5b8060a001516118d0576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611872908b9030908c908b908b906004016133cb565b602060405180830381865afa15801561188f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118b39190613160565b6118d0576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b845290915290205461190490889061338f565b111561192357604051631d66b65960e11b815260040160405180910390fd5b85816040015161193391906130cd565b3414611952576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a84529091528120805488929061198590849061338f565b90915550611163905088876126ea565b600061199f611c6b565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6119da61203e565b6001600160a01b038116611a3f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610f1b565b611a4881612261565b50565b611a5361203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611aad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad191906130e4565b90925090506001600160a01b038216611afd57604051632627b42d60e11b815260040160405180910390fd5b476000612710611b0d84846130cd565b611b17919061312b565b90506000611b25828461314d565b90508015611ba3576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611b7a576040519150601f19603f3d011682016040523d82523d6000602084013e611b7f565b606091505b5050905080611ba157604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c04576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611bf6576040519150601f19603f3d011682016040523d82523d6000602084013e611bfb565b606091505b5050905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611c4e57506380ac58cd60e01b6001600160e01b03198316145b8061077f5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611c9a8783836125d9565b6069546001600160a01b0316611cc357604051632d1f608d60e11b815260040160405180910390fd5b611ccc86612639565b611ce9576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611cfe57611cfe6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f5490915086611d676123f6565b611d71919061338f565b1115611d90576040516322eb5e9560e21b815260040160405180910390fd5b8060a00151611e2f576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611dd1908b9030908c908b908b906004016133cb565b602060405180830381865afa158015611dee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e129190613160565b611e2f576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b8452909152902054611e6390889061338f565b1115611e8257604051631d66b65960e11b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611eab908b906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611eff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f239190613160565b61195257604051635b88974760e11b815260040160405180910390fd5b600081600111158015611f5a5750611f56611c6b565b5482105b801561077f5750600160e01b611f6e611c6b565b60008481526004919091016020526040902054161592915050565b6000611f948361119a565b90508115611fd357336001600160a01b03821614611fd357611fb68133611995565b611fd3576040516367d9dca160e11b815260040160405180910390fd5b83611fdc611c6b565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146112615760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610f1b565b60008160011161212c576120aa611c6b565b600083815260049190910160205260408120549150600160e01b8216900361212c5780600003612127576120dc611c6b565b5482106120fc57604051636f96cda160e11b815260040160405180910390fd5b612104611c6b565b6000199092016000818152600493909301602052604090922054905080156120fc575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000612152611c6b565b60009485526006016020525050604090912080549092909150565b606b54156115f857606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156121e057600080fd5b505af1158015611163573d6000803e3d6000fd5b6000805160206135f183398151915254610100900460ff166122285760405162461bcd60e51b8152600401610f1b9061340a565b6109708282612832565b600054610100900460ff166122595760405162461bcd60e51b8152600401610f1b9061345e565b6112616128a5565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a54156122d4576040516302d1671b60e41b815260040160405180910390fd5b861580156122ea57506001600160a01b03841615155b8061230657506001600160a01b03841615801561230657508615155b1561232457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015612381573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123a59190613112565b606a556001600160a01b038316156123d357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c6123e58284836131c3565b50851561117c5761117c85876126ea565b60006001612402611c6b565b5403919050565b60606000612416836128d5565b60010190506000816001600160401b0381111561243557612435612c55565b6040519080825280601f01601f19166020018201604052801561245f576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461246957509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906124d09033908990889088906004016134a9565b6020604051808303816000875af192505050801561250b575060408051601f3d908101601f19168201909252612508918101906134e6565b60015b612569573d808015612539576040519150601f19603f3d011682016040523d82523d6000602084013e61253e565b606091505b508051600003612561576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461079d9061306d565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a9004806125af5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061260d90869086908690600401613503565b60006040518083038186803b15801561262557600080fd5b505afa15801561117c573d6000803e3d6000fd5b606d54600090821061265e57604051632627b42d60e11b815260040160405180910390fd5b6000606d8381548110612673576126736130a1565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906126e35750428160200151115b9392505050565b60006126f4611c6b565b54905060008290036127195760405163b562e8dd60e01b815260040160405180910390fd5b612726600084838561216d565b68010000000000000001820261273a611c6b565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717612775611c6b565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146127ff57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001016127c7565b508160000361282057604051622e076360e81b815260040160405180910390fd5b80612829611c6b565b55506111219050565b6000805160206135f183398151915254610100900460ff166128665760405162461bcd60e51b8152600401610f1b9061340a565b8161286f611c6b565b6002019061287d9082613531565b5080612887611c6b565b600301906128959082613531565b5060016128a0611c6b565b555050565b600054610100900460ff166128cc5760405162461bcd60e51b8152600401610f1b9061345e565b61126133612261565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106129145772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612940576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061295e57662386f26fc10000830492506010015b6305f5e1008310612976576305f5e100830492506008015b612710831061298a57612710830492506004015b6064831061299c576064830492506002015b600a831061077f5760010192915050565b5080546000825560060290600052602060002090810190611a4891905b80821115612a05576000808255600182018190556002820181905560038201819055600482015560058101805460ff191690556006016129ca565b5090565b6001600160e01b031981168114611a4857600080fd5b600060208284031215612a3157600080fd5b81356126e381612a09565b60005b83811015612a57578181015183820152602001612a3f565b50506000910152565b60008151808452612a78816020860160208601612a3c565b601f01601f19169290920160200192915050565b6020815260006126e36020830184612a60565b6001600160a01b0381168114611a4857600080fd5b60008083601f840112612ac657600080fd5b5081356001600160401b03811115612add57600080fd5b602083019150836020828501011115612af557600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215612b1e57600080fd5b612b288c35612a9f565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff81168114612b5557600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d0135811015612b7e57600080fd5b612b8e8e60e08f01358f01612ab4565b90955093506101008d0135811015612ba557600080fd5b50612bb78d6101008e01358e01612ab4565b81935080925050509295989b509295989b9093969950565b600060208284031215612be157600080fd5b5035919050565b60008060408385031215612bfb57600080fd5b8235612c0681612a9f565b946020939093013593505050565b600080600060608486031215612c2957600080fd5b8335612c3481612a9f565b92506020840135612c4481612a9f565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612c8557612c85612c55565b604051601f8501601f19908116603f01168101908282118183101715612cad57612cad612c55565b81604052809350858152868686011115612cc657600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612cf857600080fd5b8535612d0381612a9f565b94506020860135612d1381612a9f565b93506040860135612d2381612a9f565b92506060860135612d3381612a9f565b915060808601356001600160401b03811115612d4e57600080fd5b8601601f81018813612d5f57600080fd5b612d6e88823560208401612c6b565b9150509295509295909350565b60008060008060008060008060e0898b031215612d9757600080fd5b8835975060208901359650604089013595506060890135612db781612a9f565b94506080890135612dc781612a9f565b935060a0890135612dd781612a9f565b925060c08901356001600160401b03811115612df257600080fd5b612dfe8b828c01612ab4565b999c989b5096995094979396929594505050565b600080600080600080600060a0888a031215612e2d57600080fd5b8735612e3881612a9f565b9650602088013595506040880135945060608801356001600160401b0380821115612e6257600080fd5b612e6e8b838c01612ab4565b909650945060808a0135915080821115612e8757600080fd5b50612e948a828b01612ab4565b989b979a50959850939692959293505050565b60008060208385031215612eba57600080fd5b82356001600160401b03811115612ed057600080fd5b612edc85828601612ab4565b90969095509350505050565b600060208284031215612efa57600080fd5b81356126e381612a9f565b8015158114611a4857600080fd5b60008060408385031215612f2657600080fd5b8235612f3181612a9f565b91506020830135612f4181612f05565b809150509250929050565b60008060208385031215612f5f57600080fd5b82356001600160401b0380821115612f7657600080fd5b818501915085601f830112612f8a57600080fd5b813581811115612f9957600080fd5b86602060c083028501011115612fae57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612fd657600080fd5b8435612fe181612a9f565b93506020850135612ff181612a9f565b92506040850135915060608501356001600160401b0381111561301357600080fd5b8501601f8101871361302457600080fd5b61303387823560208401612c6b565b91505092959194509250565b6000806040838503121561305257600080fd5b823561305d81612a9f565b91506020830135612f4181612a9f565b600181811c9082168061308157607f821691505b60208210810361175357634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761077f5761077f6130b7565b600080604083850312156130f757600080fd5b825161310281612a9f565b6020939093015192949293505050565b60006020828403121561312457600080fd5b5051919050565b60008261314857634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561077f5761077f6130b7565b60006020828403121561317257600080fd5b81516126e381612f05565b601f82111561112157600081815260208120601f850160051c810160208610156131a45750805b601f850160051c820191505b81811015610c02578281556001016131b0565b6001600160401b038311156131da576131da612c55565b6131ee836131e8835461306d565b8361317d565b6000601f841160018114613222576000851561320a5750838201355b600019600387901b1c1916600186901b178355610c04565b600083815260209020601f19861690835b828110156132535786850135825560209485019460019092019101613233565b50868210156132705760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b81526000825161329f816002850160208701612a3c565b9190910160020192915050565b600060c082840312156132be57600080fd5b60405160c081018181106001600160401b03821117156132e0576132e0612c55565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561331f81612f05565b60a08201529392505050565b60006001820161333d5761333d6130b7565b5060010190565b60008251613356818460208701612a3c565b9190910192915050565b60008351613372818460208801612a3c565b835190830190613386818360208801612a3c565b01949350505050565b8082018082111561077f5761077f6130b7565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b03868116825285166020820152604081018490526080606082018190526000906133ff90830184866133a2565b979650505050505050565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906134dc90830184612a60565b9695505050505050565b6000602082840312156134f857600080fd5b81516126e381612a09565b6001600160a01b038416815260406020820181905260009061352890830184866133a2565b95945050505050565b81516001600160401b0381111561354a5761354a612c55565b61355e81613558845461306d565b8461317d565b602080601f831160018114613593576000841561357b5750858301515b600019600386901b1c1916600185901b178555610c02565b600085815260208120601f198616915b828110156135c2578886015182559484019460019091019084016135a3565b50858210156135e05787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220515503e22fdd6aa41a7f1ead0718a036029ff0c2ebd762dd021a3b7635b7249464736f6c63430008130033", + "nonce": "0x4f3", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xd2dd252aa53fa8d07f148b36ad079374acf52e2f2d5a75850d30edf1e22399ae", + "transactionType": "CREATE", + "contractName": "ERC721ABOE", + "contractAddress": "0x12905691B20F5045EC76cC0be411199051206230", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x3b2cf4", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61348780620000f46000396000f3fe6080604052600436106102305760003560e01c806366748e981161012e578063a1db9782116100ab578063cb22e01b1161006f578063cb22e01b146106aa578063de7ecf87146106bd578063e985e9c5146106d3578063f2fde38b146106f3578063fe325e961461071357600080fd5b8063a1db978214610617578063a22cb46514610637578063aa10820e14610657578063b88d4fde14610677578063c87b56dd1461068a57600080fd5b8063754b377c116100f2578063754b377c1461057d5780638c72c54e146105a45780638d6d31e3146105c45780638da5cb5b146105e457806395d89b411461060257600080fd5b806366748e98146104d05780636cc82b84146105085780636dbdaae61461052857806370a0823114610548578063715018a61461056857600080fd5b80632a778c9b116101bc5780634935484411610180578063493548441461041c5780634b1022621461043c5780634c5dffea1461047057806355f804b3146104905780636352211e146104b057600080fd5b80632a778c9b146103645780632e37eef61461037a5780632fb3b361146103c95780634128541c146103e957806342842e0e1461040957600080fd5b8063095ea7b311610203578063095ea7b3146102e6578063180f1ea3146102f957806318160ddd1461030e5780631c6d76751461033157806323b872dd1461035157600080fd5b806301ffc9a71461023557806306fdde031461026a578063075834cb1461028c578063081812fc146102ae575b600080fd5b34801561024157600080fd5b5061025561025036600461287c565b610728565b60405190151581526020015b60405180910390f35b34801561027657600080fd5b5061027f610739565b60405161026191906128e9565b34801561029857600080fd5b506102ac6102a7366004612959565b6107d4565b005b3480156102ba57600080fd5b506102ce6102c9366004612a2c565b6108cb565b6040516001600160a01b039091168152602001610261565b6102ac6102f4366004612a45565b610918565b34801561030557600080fd5b506102ac610928565b34801561031a57600080fd5b50610323610bbf565b604051908152602001610261565b34801561033d57600080fd5b506069546102ce906001600160a01b031681565b6102ac61035f366004612a71565b610bdf565b34801561037057600080fd5b50610323606a5481565b34801561038657600080fd5b5061039a610395366004612a2c565b610ddf565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610261565b3480156103d557600080fd5b506102ac6103e4366004612b3d565b610e28565b3480156103f557600080fd5b506065546102ce906001600160a01b031681565b6102ac610417366004612a71565b6110ba565b34801561042857600080fd5b506067546102ce906001600160a01b031681565b34801561044857600080fd5b506103237fdcfc50123fc6ea3c803b5b1b4cbbc9ce5b81f13451fd3124e43ef593fd840d1981565b34801561047c57600080fd5b506102ac61048b366004612bd8565b6110da565b34801561049c57600080fd5b506102ac6104ab366004612c6d565b6110f2565b3480156104bc57600080fd5b506102ce6104cb366004612a2c565b611107565b3480156104dc57600080fd5b506103236104eb366004612a45565b606e60209081526000928352604080842090915290825290205481565b34801561051457600080fd5b506066546102ce906001600160a01b031681565b34801561053457600080fd5b506102ac610543366004612a2c565b611112565b34801561055457600080fd5b50610323610563366004612cae565b61111f565b34801561057457600080fd5b506102ac611187565b34801561058957600080fd5b50610592600181565b60405160ff9091168152602001610261565b3480156105b057600080fd5b506068546102ce906001600160a01b031681565b3480156105d057600080fd5b506102ac6105df366004612ccb565b61119b565b3480156105f057600080fd5b506033546001600160a01b03166102ce565b34801561060e57600080fd5b5061027f6111b2565b34801561062357600080fd5b506102ac610632366004612a45565b6111ee565b34801561064357600080fd5b506102ac610652366004612d54565b611296565b34801561066357600080fd5b506102ac610672366004612d8d565b611313565b6102ac610685366004612e01565b611503565b34801561069657600080fd5b5061027f6106a5366004612a2c565b61154d565b6102ac6106b8366004612bd8565b6116a8565b3480156106c957600080fd5b50610323606b5481565b3480156106df57600080fd5b506102556106ee366004612e80565b61184d565b3480156106ff57600080fd5b506102ac61070e366004612cae565b61188a565b34801561071f57600080fd5b506102ac611903565b600061073382611ad5565b92915050565b6060610743611b23565b600201805461075190612eae565b80601f016020809104026020016040519081016040528092919081815260200182805461077d90612eae565b80156107ca5780601f1061079f576101008083540402835291602001916107ca565b820191906000526020600020905b8154815290600101906020018083116107ad57829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061080e5761080e612ee2565b90600052602060002090600602016003015461082a9190612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b15801561089757600080fd5b505af11580156108ab573d6000803e3d6000fd5b505050506108be8b8b8b87878787611b47565b5050505050505050505050565b60006108d682611db0565b6108f3576040516333d1c03960e21b815260040160405180910390fd5b6108fb611b23565b60009283526006016020525060409020546001600160a01b031690565b61092482826001611df9565b5050565b610930611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa15801561098a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ae9190612f25565b90925090506001600160a01b0382166109da57604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a479190612f53565b90506000612710610a588484612f0e565b610a629190612f6c565b90506000610a708284612f8e565b90508015610b125760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610acc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af09190612fa1565b905080610b1057604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb85760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b969190612fa1565b905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610bcb611b23565b60010154610bd7611b23565b540303919050565b6000610bea82611f08565b9050836001600160a01b0316816001600160a01b031614610c1d5760405162a1148160e81b815260040160405180910390fd5b600080610c2984611fb5565b91509150610c4e8187610c393390565b6001600160a01b039081169116811491141790565b610c7957610c5c863361184d565b610c7957604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610ca057604051633a954ecd60e21b815260040160405180910390fd5b610cad8686866001611fdd565b8015610cb857600082555b610cc0611b23565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610cec611b23565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d23611b23565b60008681526004919091016020526040812091909155600160e11b84169003610d995760018401610d52611b23565b600082815260049190910160205260408120549003610d9757610d73611b23565b548114610d975783610d83611b23565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610bb6565b606d8181548110610def57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b60008051602061343283398151915254610100900460ff16610e5d576000805160206134328339815191525460ff1615610e61565b303b155b610ed85760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b60008051602061343283398151915254610100900460ff16158015610f1457600080516020613432833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f345750600054600160ff909116105b80610f4e5750303b158015610f4e575060005460ff166001145b610fb15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610ecf565b6000805460ff191660011790558015610fd4576000805461ff0019166101001790555b610fed8360405180602001604052806000815250612064565b610ff56120a2565b610ffe876120d1565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a16929091169190911790558015611093576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610bb6575050600080516020613432833981519152805461ff001916905550505050565b6110d583838360405180602001604052806000815250611503565b505050565b6110e987878787878787611b47565b50505050505050565b6110fa611eae565b606c6110d5828483613004565b600061073382611f08565b61111a611eae565b606b55565b60006001600160a01b038216611148576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611158611b23565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61118f611eae565b61119960006120d1565b565b6111a3611eae565b6110e987878787878787612123565b6060606a546000146111eb576111c9606a54612266565b6040516020016111d991906130c3565b60405160208183030381529060405290505b90565b6111f6611eae565b6069546001600160a01b039081169083160361122557604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611272573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d59190612fa1565b8061129f611b23565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61131b611eae565b606d541561132f5761132f606d600061280a565b600081815b818110156114c957600085858381811061135057611350612ee2565b905060c0020180360381019061136691906130ed565b9050838160000151108061137e575060208101518151115b1561139c57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506114c28161316c565b9050611334565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b61150e848484610bdf565b6001600160a01b0383163b156115475761152a848484846122f8565b611547576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061155882611db0565b61157557604051632627b42d60e11b815260040160405180910390fd5b600061157f6123e3565b905080516000036115a1576040518060200160405280600081525091506116a2565b60408051600180825281830190925260009160208201818036833701905050905081600183516115d19190612f8e565b815181106115e1576115e1612ee2565b602001015160f81c60f81b816000815181106115ff576115ff612ee2565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161164f9190613185565b604051602081830303815290604052805190602001200361169b5782611674866123f2565b6040516020016116859291906131a1565b604051602081830303815290604052935061169f565b8293505b50505b50919050565b606a546000036116cb576040516316812a5360e11b815260040160405180910390fd5b6116d6878383612436565b6116df86612496565b6116fc576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061171157611711612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820181905290915061180a576066546040516332f1944960e21b81526001600160a01b039091169063cbc65124906117ac908b9030908c908b908b906004016131f9565b602060405180830381865afa1580156117c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ed9190612fa1565b61180a576040516352c973a760e01b815260040160405180910390fd5b85816040015161181a9190612f0e565b3414611839576040516318f4198360e21b815260040160405180910390fd5b6118438887612547565b5050505050505050565b6000611857611b23565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b611892611eae565b6001600160a01b0381166118f75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610ecf565b611900816120d1565b50565b61190b611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611965573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119899190612f25565b90925090506001600160a01b0382166119b557604051632627b42d60e11b815260040160405180910390fd5b4760006127106119c58484612f0e565b6119cf9190612f6c565b905060006119dd8284612f8e565b90508015611a5b576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611a32576040519150601f19603f3d011682016040523d82523d6000602084013e611a37565b606091505b5050905080611a5957604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb8576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611aae576040519150601f19603f3d011682016040523d82523d6000602084013e611ab3565b606091505b5050905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611b0657506380ac58cd60e01b6001600160e01b03198316145b806107335750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611b52878383612436565b6069546001600160a01b0316611b7b57604051632d1f608d60e11b815260040160405180910390fd5b611b8486612496565b611ba1576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611bb657611bb6612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a08201819052909150611caf576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611c51908b9030908c908b908b906004016131f9565b602060405180830381865afa158015611c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c929190612fa1565b611caf576040516352c973a760e01b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611cd8908b90612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611d2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d509190612fa1565b611d6d57604051635b88974760e11b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a845290915281208054889290611da0908490613238565b9091555061184390508887612547565b600081600111158015611dca5750611dc6611b23565b5482105b80156107335750600160e01b611dde611b23565b60008481526004919091016020526040902054161592915050565b6000611e0483611107565b90508115611e4357336001600160a01b03821614611e4357611e26813361184d565b611e43576040516367d9dca160e11b815260040160405180910390fd5b83611e4c611b23565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146111995760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610ecf565b600081600111611f9c57611f1a611b23565b600083815260049190910160205260408120549150600160e01b82169003611f9c5780600003611f9757611f4c611b23565b548210611f6c57604051636f96cda160e11b815260040160405180910390fd5b611f74611b23565b600019909201600081815260049390930160205260409092205490508015611f6c575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611fc2611b23565b60009485526006016020525050604090912080549092909150565b606b541561154757606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b15801561205057600080fd5b505af1158015611843573d6000803e3d6000fd5b60008051602061343283398151915254610100900460ff166120985760405162461bcd60e51b8152600401610ecf9061324b565b610924828261268f565b600054610100900460ff166120c95760405162461bcd60e51b8152600401610ecf9061329f565b611199612702565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a5415612144576040516302d1671b60e41b815260040160405180910390fd5b8615801561215a57506001600160a01b03841615155b8061217657506001600160a01b03841615801561217657508615155b1561219457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af11580156121f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122159190612f53565b606a556001600160a01b0383161561224357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c612255828483613004565b5085156110e9576110e98587612547565b6060600061227383612732565b60010190506000816001600160401b0381111561229257612292612ab2565b6040519080825280601f01601f1916602001820160405280156122bc576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846122c657509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a029061232d9033908990889088906004016132ea565b6020604051808303816000875af1925050508015612368575060408051601f3d908101601f1916820190925261236591810190613327565b60015b6123c6573d808015612396576040519150601f19603f3d011682016040523d82523d6000602084013e61239b565b606091505b5080516000036123be576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461075190612eae565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a90048061240c5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061246a90869086908690600401613344565b60006040518083038186803b15801561248257600080fd5b505afa1580156110e9573d6000803e3d6000fd5b606d5460009082106124bb57604051632627b42d60e11b815260040160405180910390fd5b6000606d83815481106124d0576124d0612ee2565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906125405750428160200151115b9392505050565b6000612551611b23565b54905060008290036125765760405163b562e8dd60e01b815260040160405180910390fd5b6125836000848385611fdd565b680100000000000000018202612597611b23565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b17176125d2611b23565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b81811461265c57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101612624565b508160000361267d57604051622e076360e81b815260040160405180910390fd5b80612686611b23565b55506110d59050565b60008051602061343283398151915254610100900460ff166126c35760405162461bcd60e51b8152600401610ecf9061324b565b816126cc611b23565b600201906126da9082613372565b50806126e4611b23565b600301906126f29082613372565b5060016126fd611b23565b555050565b600054610100900460ff166127295760405162461bcd60e51b8152600401610ecf9061329f565b611199336120d1565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106127715772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061279d576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106127bb57662386f26fc10000830492506010015b6305f5e10083106127d3576305f5e100830492506008015b61271083106127e757612710830492506004015b606483106127f9576064830492506002015b600a83106107335760010192915050565b508054600082556006029060005260206000209081019061190091905b80821115612862576000808255600182018190556002820181905560038201819055600482015560058101805460ff19169055600601612827565b5090565b6001600160e01b03198116811461190057600080fd5b60006020828403121561288e57600080fd5b813561254081612866565b60005b838110156128b457818101518382015260200161289c565b50506000910152565b600081518084526128d5816020860160208601612899565b601f01601f19169290920160200192915050565b60208152600061254060208301846128bd565b6001600160a01b038116811461190057600080fd5b60008083601f84011261292357600080fd5b5081356001600160401b0381111561293a57600080fd5b60208301915083602082850101111561295257600080fd5b9250929050565b60008060008060008060008060008060006101208c8e03121561297b57600080fd5b6129858c356128fc565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff811681146129b257600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d01358110156129db57600080fd5b6129eb8e60e08f01358f01612911565b90955093506101008d0135811015612a0257600080fd5b50612a148d6101008e01358e01612911565b81935080925050509295989b509295989b9093969950565b600060208284031215612a3e57600080fd5b5035919050565b60008060408385031215612a5857600080fd5b8235612a63816128fc565b946020939093013593505050565b600080600060608486031215612a8657600080fd5b8335612a91816128fc565b92506020840135612aa1816128fc565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612ae257612ae2612ab2565b604051601f8501601f19908116603f01168101908282118183101715612b0a57612b0a612ab2565b81604052809350858152868686011115612b2357600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612b5557600080fd5b8535612b60816128fc565b94506020860135612b70816128fc565b93506040860135612b80816128fc565b92506060860135612b90816128fc565b915060808601356001600160401b03811115612bab57600080fd5b8601601f81018813612bbc57600080fd5b612bcb88823560208401612ac8565b9150509295509295909350565b600080600080600080600060a0888a031215612bf357600080fd5b8735612bfe816128fc565b9650602088013595506040880135945060608801356001600160401b0380821115612c2857600080fd5b612c348b838c01612911565b909650945060808a0135915080821115612c4d57600080fd5b50612c5a8a828b01612911565b989b979a50959850939692959293505050565b60008060208385031215612c8057600080fd5b82356001600160401b03811115612c9657600080fd5b612ca285828601612911565b90969095509350505050565b600060208284031215612cc057600080fd5b8135612540816128fc565b600080600080600080600060c0888a031215612ce657600080fd5b87359650602088013595506040880135612cff816128fc565b94506060880135612d0f816128fc565b93506080880135612d1f816128fc565b925060a08801356001600160401b03811115612d3a57600080fd5b612c5a8a828b01612911565b801515811461190057600080fd5b60008060408385031215612d6757600080fd5b8235612d72816128fc565b91506020830135612d8281612d46565b809150509250929050565b60008060208385031215612da057600080fd5b82356001600160401b0380821115612db757600080fd5b818501915085601f830112612dcb57600080fd5b813581811115612dda57600080fd5b86602060c083028501011115612def57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612e1757600080fd5b8435612e22816128fc565b93506020850135612e32816128fc565b92506040850135915060608501356001600160401b03811115612e5457600080fd5b8501601f81018713612e6557600080fd5b612e7487823560208401612ac8565b91505092959194509250565b60008060408385031215612e9357600080fd5b8235612e9e816128fc565b91506020830135612d82816128fc565b600181811c90821680612ec257607f821691505b6020821081036116a257634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761073357610733612ef8565b60008060408385031215612f3857600080fd5b8251612f43816128fc565b6020939093015192949293505050565b600060208284031215612f6557600080fd5b5051919050565b600082612f8957634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561073357610733612ef8565b600060208284031215612fb357600080fd5b815161254081612d46565b601f8211156110d557600081815260208120601f850160051c81016020861015612fe55750805b601f850160051c820191505b81811015610bb657828155600101612ff1565b6001600160401b0383111561301b5761301b612ab2565b61302f836130298354612eae565b83612fbe565b6000601f841160018114613063576000851561304b5750838201355b600019600387901b1c1916600186901b178355610bb8565b600083815260209020601f19861690835b828110156130945786850135825560209485019460019092019101613074565b50868210156130b15760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b8152600082516130e0816002850160208701612899565b9190910160020192915050565b600060c082840312156130ff57600080fd5b60405160c081018181106001600160401b038211171561312157613121612ab2565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561316081612d46565b60a08201529392505050565b60006001820161317e5761317e612ef8565b5060010190565b60008251613197818460208701612899565b9190910192915050565b600083516131b3818460208801612899565b8351908301906131c7818360208801612899565b01949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b038681168252851660208201526040810184905260806060820181905260009061322d90830184866131d0565b979650505050505050565b8082018082111561073357610733612ef8565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061331d908301846128bd565b9695505050505050565b60006020828403121561333957600080fd5b815161254081612866565b6001600160a01b038416815260406020820181905260009061336990830184866131d0565b95945050505050565b81516001600160401b0381111561338b5761338b612ab2565b61339f816133998454612eae565b84612fbe565b602080601f8311600181146133d457600084156133bc5750858301515b600019600386901b1c1916600185901b178555610bb6565b600085815260208120601f198616915b82811015613403578886015182559484019460019091019084016133e4565b50858210156134215787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa26469706673582212203aabe44c2c1beaefd8e913364be7982fe9ebedd320dbc00c62dcd64b800e7bbd64736f6c63430008130033", + "nonce": "0x4f4", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x2644ab5f1ef6fb1b5f01818885f0ee539409db27dad3686f64a81e351fed16b5", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0x7A700EeF6Abf340DF822202730ce1CcC807B575e", + "function": null, + "arguments": [], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x1f76b5", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611b41806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106102115760003560e01c80637d2405bb11610125578063b7dd8d20116100ad578063d547741f1161007c578063d547741f14610494578063d57f966b146104a7578063d8f4b6fd146104b0578063f339b08e146104c5578063fdbda0ec146104d857600080fd5b8063b7dd8d2014610446578063ba4f11c914610459578063bdd2fe781461046c578063cfc5a0c01461047f57600080fd5b80638e837abf116100f45780638e837abf146103f257806391d148541461040557806398eaa0c0146104185780639f1fb80d1461042b578063a217fddf1461043e57600080fd5b80637d2405bb146103a6578063832ca2f5146103b957806385be1c15146103cc5780638d058ac8146103df57600080fd5b806336568abe116101a85780634eb6b7f6116101775780634eb6b7f614610347578063641254bd1461035a578063678213491461036d5780636b7e3949146103805780636cc82b841461039357600080fd5b806336568abe146102fb5780634128541c1461030e57806347fcac3b146103215780634c7dfac31461033457600080fd5b80631ce6e444116101e45780631ce6e444146102915780631e5b3684146102a4578063248a9ca3146102b75780632f2ff15d146102e857600080fd5b806301ffc9a7146102165780631459457a1461023e57806318c25d8a146102535780631c8518c214610266575b600080fd5b61022961022436600461161d565b61050b565b60405190151581526020015b60405180910390f35b61025161024c36600461165e565b610542565b005b6102516102613660046116c3565b6106c3565b609b54610279906001600160a01b031681565b6040516001600160a01b039091168152602001610235565b609a54610279906001600160a01b031681565b6102516102b23660046116ed565b61083d565b6102da6102c53660046116ed565b60009081526065602052604090206001015490565b604051908152602001610235565b6102516102f6366004611706565b6108ef565b610251610309366004611706565b610914565b609854610279906001600160a01b031681565b61027961032f3660046116c3565b610992565b610229610342366004611732565b6109a6565b609e54610279906001600160a01b031681565b610251610368366004611732565b6109c0565b61025161037b36600461174d565b6109ee565b61025161038e366004611732565b610ad6565b609954610279906001600160a01b031681565b6102516103b4366004611732565b610b06565b6102516103c7366004611732565b610b34565b6102516103da366004611706565b610b62565b6102796103ed3660046116ed565b610be8565b610251610400366004611732565b610c02565b610229610413366004611706565b610c30565b610279610426366004611789565b610c5b565b61025161043936600461184e565b610c8f565b6102da600081565b6102516104543660046118b4565b610dc0565b6102da610467366004611732565b610e94565b609c54610279906001600160a01b031681565b6102da600080516020611acc83398151915281565b6102516104a2366004611706565b610f32565b6102da609d5481565b6102da600080516020611aec83398151915281565b6102796104d33660046116ed565b610f57565b6104eb6104e63660046116ed565b610f81565b604080516001600160a01b03938416815292909116602083015201610235565b60006001600160e01b03198216637965db0b60e01b148061053c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156105625750600054600160ff909116105b8061057c5750303b15801561057c575060005460ff166001145b6105e45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610607576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d5561066a610fba565b610675600033611027565b80156106bb576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b600080516020611acc8339815191526106db81611031565b6127108211156106fe57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661072557604051632627b42d60e11b815260040160405180910390fd5b609c5460009061073d906001600160a01b031661103e565b609854609e5460405163c0c53b8b60e01b81526001600160a01b0388811660048301529283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561079957600080fd5b505af11580156107ad573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b9199150606401600060405180830381600087803b15801561080757600080fd5b505af115801561081b573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856110d8565b50505050565b600080516020611aec83398151915261085581611031565b609b5460009061086e906001600160a01b03168461115e565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b1580156108c857600080fd5b505af11580156108dc573d6000803e3d6000fd5b505050506108ea81336111fb565b505050565b60008281526065602052604090206001015461090a81611031565b6108ea83836110d8565b6001600160a01b03811633146109845760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016105db565b61098e8282611353565b5050565b600061099f8383306113ba565b9392505050565b600061053c600080516020611aec83398151915283610c30565b60006109cb81611031565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b600080516020611acc833981519152610a0681611031565b612710821115610a2957604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b038416610a5057604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b91990606401600060405180830381600087803b158015610aa657600080fd5b505af1158015610aba573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856108ef565b600080516020611acc833981519152610aee81611031565b61098e600080516020611aec83398151915283610f32565b6000610b1181611031565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b3f81611031565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b6d81611031565b81609f8481548110610b8157610b81611904565b60009182526020918290200180546001600160a01b0319166001600160a01b0393841617905560408051868152928516918301919091527f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a1505050565b609b5460009061053c906001600160a01b031683306113ba565b6000610c0d81611031565b50609e80546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600061099f609f8481548110610c7357610c73611904565b6000918252602090912001546001600160a01b031683306113ba565b600080516020611acc833981519152610ca781611031565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610cf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d15919061191a565b610d3257604051634f3bd42760e01b815260040160405180910390fd5b6000610d3e868461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610d84948c9491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610d9e57600080fd5b505af1158015610db2573d6000803e3d6000fd5b505050506106bb81866111fb565b600080516020611aec833981519152610dd881611031565b6000610e0b609f8681548110610df057610df0611904565b6000918252602090912001546001600160a01b03168461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610e5194339491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610e6b57600080fd5b505af1158015610e7f573d6000803e3d6000fd5b50505050610e8d81336111fb565b5050505050565b600080610ea081611031565b609f80546001810182556000919091527f0bc14066c33013fe88f66e314e4cf150b0b2d4d6451a1a51dbbd1c27cd11de28810180546001600160a01b0319166001600160a01b0386169081179091556040805183815260208101929092529193507f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a150919050565b600082815260656020526040902060010154610f4d81611031565b6108ea8383611353565b609f8181548110610f6757600080fd5b6000918252602090912001546001600160a01b0316905081565b60978181548110610f9157600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff166110255760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016105db565b565b61098e82826110d8565b61103b8133611416565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b0381166110d35760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b60448201526064016105db565b919050565b6110e28282610c30565b61098e5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561111a3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b03811661053c5760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c656400000000000000000060448201526064016105db565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c906112d19085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b1580156112eb57600080fd5b505af11580156112ff573d6000803e3d6000fd5b50505050609d60008154611312906119e9565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b61135d8282610c30565b1561098e5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6114208282610c30565b61098e5761142d8161146f565b611438836020611481565b604051602001611449929190611a02565b60408051601f198184030181529082905262461bcd60e51b82526105db91600401611a77565b606061053c6001600160a01b03831660145b60606000611490836002611a8a565b61149b906002611aa1565b67ffffffffffffffff8111156114b3576114b36117ab565b6040519080825280601f01601f1916602001820160405280156114dd576020820181803683370190505b509050600360fc1b816000815181106114f8576114f8611904565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061152757611527611904565b60200101906001600160f81b031916908160001a905350600061154b846002611a8a565b611556906001611aa1565b90505b60018111156115ce576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061158a5761158a611904565b1a60f81b8282815181106115a0576115a0611904565b60200101906001600160f81b031916908160001a90535060049490941c936115c781611ab4565b9050611559565b50831561099f5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016105db565b60006020828403121561162f57600080fd5b81356001600160e01b03198116811461099f57600080fd5b80356001600160a01b03811681146110d357600080fd5b600080600080600060a0868803121561167657600080fd5b61167f86611647565b945061168d60208701611647565b935061169b60408701611647565b92506116a960608701611647565b91506116b760808701611647565b90509295509295909350565b600080604083850312156116d657600080fd5b6116df83611647565b946020939093013593505050565b6000602082840312156116ff57600080fd5b5035919050565b6000806040838503121561171957600080fd5b8235915061172960208401611647565b90509250929050565b60006020828403121561174457600080fd5b61099f82611647565b60008060006060848603121561176257600080fd5b61176b84611647565b925061177960208501611647565b9150604084013590509250925092565b6000806040838503121561179c57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126117d257600080fd5b813567ffffffffffffffff808211156117ed576117ed6117ab565b604051601f8301601f19908116603f01168101908282118183101715611815576118156117ab565b8160405283815286602085880101111561182e57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561186457600080fd5b61186d85611647565b935061187b60208601611647565b9250604085013567ffffffffffffffff81111561189757600080fd5b6118a3878288016117c1565b949793965093946060013593505050565b6000806000606084860312156118c957600080fd5b83359250602084013567ffffffffffffffff8111156118e757600080fd5b6118f3868287016117c1565b925050604084013590509250925092565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561192c57600080fd5b8151801515811461099f57600080fd5b60005b8381101561195757818101518382015260200161193f565b50506000910152565b6000815180845261197881602086016020860161193c565b601f01601f19169290920160200192915050565b6001600160a01b038681168252858116602083015284811660408301528316606082015260a0608082018190526000906119c890830184611960565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016119fb576119fb6119d3565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611a3a81601785016020880161193c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611a6b81602884016020880161193c565b01602801949350505050565b60208152600061099f6020830184611960565b808202811582820484141761053c5761053c6119d3565b8082018082111561053c5761053c6119d3565b600081611ac357611ac36119d3565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220bf7faf033458943f1f81d983fa6efeed9fc4cf72c12acec8503359cc4e9c8f6864736f6c63430008130033", + "nonce": "0x4f5", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0x1d5a0535ad40e6afd71b5ffaba7ec76a7c0c26f7585e91f5a2fb1c37df6833a0", + "transactionIndex": "0x1", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0xca9f1", + "gasUsed": "0xbaffc", + "contractAddress": "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "logs": [ + { + "address": "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x1d5a0535ad40e6afd71b5ffaba7ec76a7c0c26f7585e91f5a2fb1c37df6833a0", + "transactionIndex": "0x1", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x169069", + "gasUsed": "0x9e678", + "contractAddress": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "logs": [ + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", + "0x000000000000000000000000a4f3f987bebf7786fdc7147856be776fbd26029b" + ], + "data": "0x", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x1", + "removed": false + }, + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "0x000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "data": "0x", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x2", + "removed": false + }, + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x3", + "removed": false + }, + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f" + ], + "data": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb76", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x4", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000004000000000000000200000000400000000000000000000000000000020400000000000000000000000000000000000000000000000000000000000000000400000000000000000000004002020000000000000000000000000000000000000000020000000000000000000800000000800000000000000000000000000000002000000000000000000040000000000000000080000000000000800000000000000000000000000000000400000000000000000000001000000000000000000020000000000000000000040000000000000400000100000000000020000000000000000000000000000400000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0xa247a9ee6a1e0eb7f2695a60e052a8a098a454f0b9648c5e30609d6314766039", + "transactionIndex": "0x3", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x38ee9f", + "gasUsed": "0x225e36", + "contractAddress": "0x67eE62b7C507960Ea2d0e900F391eB1856723a88", + "logs": [ + { + "address": "0x67eE62b7C507960Ea2d0e900F391eB1856723a88", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0xa247a9ee6a1e0eb7f2695a60e052a8a098a454f0b9648c5e30609d6314766039", + "transactionIndex": "0x3", + "logIndex": "0x5", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000080000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000100000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0x0b2d706956e4a636da4bd672e0784bcd7645e4c8b9d6d3eac61581d7749558b9", + "transactionIndex": "0x4", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x67f0a5", + "gasUsed": "0x2f0206", + "contractAddress": "0xa765c364f57598f4175Cd482694a2934fD408CF9", + "logs": [ + { + "address": "0xa765c364f57598f4175Cd482694a2934fD408CF9", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x0b2d706956e4a636da4bd672e0784bcd7645e4c8b9d6d3eac61581d7749558b9", + "transactionIndex": "0x4", + "logIndex": "0x6", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000020000080000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0xd2dd252aa53fa8d07f148b36ad079374acf52e2f2d5a75850d30edf1e22399ae", + "transactionIndex": "0x5", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x957908", + "gasUsed": "0x2d8863", + "contractAddress": "0x12905691B20F5045EC76cC0be411199051206230", + "logs": [ + { + "address": "0x12905691B20F5045EC76cC0be411199051206230", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0xd2dd252aa53fa8d07f148b36ad079374acf52e2f2d5a75850d30edf1e22399ae", + "transactionIndex": "0x5", + "logIndex": "0x7", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000002000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000040000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0x2644ab5f1ef6fb1b5f01818885f0ee539409db27dad3686f64a81e351fed16b5", + "transactionIndex": "0x1", + "blockHash": "0xc5486837e8abe7bf303bf7e9dbfebaf6ac8b99619b862c7c522bf1cd9a876f7b", + "blockNumber": "0xd357bd", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x18ecdb", + "gasUsed": "0x1835b2", + "contractAddress": "0x7A700EeF6Abf340DF822202730ce1CcC807B575e", + "logs": [ + { + "address": "0x7A700EeF6Abf340DF822202730ce1CcC807B575e", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xc5486837e8abe7bf303bf7e9dbfebaf6ac8b99619b862c7c522bf1cd9a876f7b", + "blockNumber": "0xd357bd", + "transactionHash": "0x2644ab5f1ef6fb1b5f01818885f0ee539409db27dad3686f64a81e351fed16b5", + "transactionIndex": "0x1", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f00" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1702894749, + "chain": 84531, + "multi": false, + "commit": "fb90636" +} \ No newline at end of file diff --git a/broadcast/deploy-kyc-upgrade.s.sol/84531/run-latest.json b/broadcast/deploy-kyc-upgrade.s.sol/84531/run-latest.json new file mode 100644 index 0000000..e17323a --- /dev/null +++ b/broadcast/deploy-kyc-upgrade.s.sol/84531/run-latest.json @@ -0,0 +1,354 @@ +{ + "transactions": [ + { + "hash": "0x1d5a0535ad40e6afd71b5ffaba7ec76a7c0c26f7585e91f5a2fb1c37df6833a0", + "transactionType": "CREATE", + "contractName": "ABRoyaltyTestData", + "contractAddress": "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0xf307e", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b610c68806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063627cdcb9116100a2578063ccac2c1311610071578063ccac2c131461022b578063cfc5a0c01461023e578063d547741f14610265578063e83931af14610278578063f2c526bc1461016357600080fd5b8063627cdcb9146101f557806391d14854146101fd578063a217fddf14610210578063c4d66de81461021857600080fd5b80632f2ff15d116100de5780632f2ff15d146101a957806336568abe146101bc578063437a0de9146101cf5780634a96535b146101e257600080fd5b806301ffc9a7146101105780631180b553146101385780631723576414610163578063248a9ca314610178575b600080fd5b61012361011e366004610977565b610289565b60405190151581526020015b60405180910390f35b61014b6101463660046109bd565b6102c0565b6040516001600160a01b03909116815260200161012f565b6101766101713660046109d8565b505050565b005b61019b610186366004610a5b565b60009081526065602052604090206001015490565b60405190815260200161012f565b6101766101b7366004610a74565b6102cb565b6101766101ca366004610a74565b6102f0565b60975461014b906001600160a01b031681565b6101766101f03660046109bd565b610373565b6101766103a1565b61012361020b366004610a74565b6103c2565b61019b600081565b6101766102263660046109bd565b6103ed565b610176610239366004610aa0565b61054b565b61019b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b610176610273366004610a74565b6105a4565b6101766102863660046109bd565b50565b60006001600160e01b03198216637965db0b60e01b14806102ba57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006102ba826105c9565b6000828152606560205260409020600101546102e6816105fb565b6101718383610605565b6001600160a01b03811633146103655760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61036f828261068b565b5050565b600061037e816105fb565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006103ac816105fb565b6099600081546103bb90610ae0565b9091555050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600054610100900460ff161580801561040d5750600054600160ff909116105b806104275750303b158015610427575060005460ff166001145b61048a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161035c565b6000805460ff1916600117905580156104ad576000805461ff0019166101001790555b6001600160a01b0382166104d457604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b0384161790556104f76106f2565b61050260003361075f565b801561036f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e610575816105fb565b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b6000828152606560205260409020600101546105bf816105fb565b610171838361068b565b6097546001600160a01b03828116600090815260986020526040902054918116911680156105f5578091505b50919050565b6102868133610769565b61060f82826103c2565b61036f5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556106473390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61069582826103c2565b1561036f5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600054610100900460ff1661075d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161035c565b565b61036f8282610605565b61077382826103c2565b61036f57610780816107c2565b61078b8360206107d4565b60405160200161079c929190610b1d565b60408051601f198184030181529082905262461bcd60e51b825261035c91600401610b92565b60606102ba6001600160a01b03831660145b606060006107e3836002610bc5565b6107ee906002610bdc565b67ffffffffffffffff81111561080657610806610bef565b6040519080825280601f01601f191660200182016040528015610830576020820181803683370190505b509050600360fc1b8160008151811061084b5761084b610c05565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061087a5761087a610c05565b60200101906001600160f81b031916908160001a905350600061089e846002610bc5565b6108a9906001610bdc565b90505b6001811115610921576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106108dd576108dd610c05565b1a60f81b8282815181106108f3576108f3610c05565b60200101906001600160f81b031916908160001a90535060049490941c9361091a81610c1b565b90506108ac565b5083156109705760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161035c565b9392505050565b60006020828403121561098957600080fd5b81356001600160e01b03198116811461097057600080fd5b80356001600160a01b03811681146109b857600080fd5b919050565b6000602082840312156109cf57600080fd5b610970826109a1565b6000806000604084860312156109ed57600080fd5b6109f6846109a1565b9250602084013567ffffffffffffffff80821115610a1357600080fd5b818601915086601f830112610a2757600080fd5b813581811115610a3657600080fd5b876020828501011115610a4857600080fd5b6020830194508093505050509250925092565b600060208284031215610a6d57600080fd5b5035919050565b60008060408385031215610a8757600080fd5b82359150610a97602084016109a1565b90509250929050565b60008060408385031215610ab357600080fd5b610abc836109a1565b9150610a97602084016109a1565b634e487b7160e01b600052601160045260246000fd5b600060018201610af257610af2610aca565b5060010190565b60005b83811015610b14578181015183820152602001610afc565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351610b55816017850160208801610af9565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351610b86816028840160208801610af9565b01602801949350505050565b6020815260008251806020840152610bb1816040850160208701610af9565b601f01601f19169190910160400192915050565b80820281158282048414176102ba576102ba610aca565b808201808211156102ba576102ba610aca565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081610c2a57610c2a610aca565b50600019019056fea264697066735822122040236fb5a9f8d37d1dbed1e02d2c9cb8d0ce3408a1a8bc4db48fc822e65a260164736f6c63430008130033", + "nonce": "0x4f0", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "function": null, + "arguments": [ + "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "0x305D807d22070DfFF295f5575eCD354f72c2eB76", + "0xc4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0xcdd9f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220015283480906c5047a52547ccacb893764314c6da4df6de2f1090a24d8bedc7e64736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000a4f3f987bebf7786fdc7147856be776fbd26029b000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb7600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd00000000000000000000000000000000000000000000000000000000", + "nonce": "0x4f1", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xa247a9ee6a1e0eb7f2695a60e052a8a098a454f0b9648c5e30609d6314766039", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0x67eE62b7C507960Ea2d0e900F391eB1856723a88", + "function": null, + "arguments": [], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x2caa67", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61274b80620000f46000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806378c5195e11610104578063b08805a5116100a2578063d518b7ff11610071578063d518b7ff14610470578063d547741f14610483578063df3d053b14610496578063f8372320146104a957600080fd5b8063b08805a5146103f8578063b81155b51461040b578063c0c53b8b14610448578063cfc5a0c01461045b57600080fd5b806391d14854116100de57806391d14854146103a15780639ab29f2b146103b4578063a217fddf146103c7578063a626f573146103cf57600080fd5b806378c5195e146103685780638c72c54e1461037b5780638fd1101c1461038e57600080fd5b806336568abe1161017c5780634e4345921161014b5780634e434592146103155780634eb6b7f6146103285780636ce10ab61461033b578063754b377c1461034e57600080fd5b806336568abe146102c757806342f1e879146102da578063482a61ff146102ef5780634acdd3581461030257600080fd5b80631c44eb4f116101b85780631c44eb4f1461022f5780631d3b405a14610242578063248a9ca3146102835780632f2ff15d146102b457600080fd5b806301ffc9a7146101df57806319c0fab9146102075780631bfb1bb81461021c575b600080fd5b6101f26101ed366004611c44565b6104b2565b60405190151581526020015b60405180910390f35b61021a610215366004611cb9565b6104e9565b005b61021a61022a366004611d52565b610603565b61021a61023d366004611e0c565b6106b5565b61026b610250366004611e77565b6099602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b6102a6610291366004611e77565b60009081526065602052604090206001015490565b6040519081526020016101fe565b61021a6102c2366004611ea5565b610706565b61021a6102d5366004611ea5565b610730565b6102a66000805160206126f683398151915281565b61021a6102fd366004611ed5565b6107b3565b61021a610310366004611f20565b6107c8565b61021a610323366004611f6f565b6107fc565b60985461026b906001600160a01b031681565b61021a610349366004611fe2565b610867565b610356600181565b60405160ff90911681526020016101fe565b6102a6610376366004611ea5565b6108f9565b60975461026b906001600160a01b031681565b61021a61039c366004612023565b610927565b6101f26103af366004611ea5565b61096b565b6102a66103c2366004611ea5565b610996565b6102a6600081565b61026b6103dd366004611e77565b609a602052600090815260409020546001600160a01b031681565b61021a610406366004612069565b6109cd565b61041e610419366004611e77565b6109ef565b604080516001600160801b03948516815292841660208401529216918101919091526060016101fe565b61021a61045636600461208b565b610a24565b6102a66000805160206126d683398151915281565b61021a61047e3660046120d6565b610b96565b61021a610491366004611ea5565b610c70565b61021a6104a4366004612159565b610c95565b6102a66103e881565b60006001600160e01b03198216637965db0b60e01b14806104e357506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000805160206126d683398151915261050181610d39565b83868380831461052457604051632627b42d60e11b815260040160405180910390fd5b60005b838110156105f65761058289898381811061054457610544612187565b9050602002016020810190610559919061219d565b88888481811061056b5761056b612187565b905060200281019061057d91906121ba565b610d46565b60005b838110156105e5576105d58c8c838181106105a2576105a2612187565b905060200201358b8b858181106105bb576105bb612187565b90506020020160208101906105d0919061219d565b610daf565b6105de81612216565b9050610585565b506105ef81612216565b9050610527565b5050505050505050505050565b6000805160206126d683398151915261061b81610d39565b838280821461063d57604051632627b42d60e11b815260040160405180910390fd5b60005b828110156106aa5761068488888381811061065d5761065d612187565b9050602002016020810190610672919061219d565b87878481811061056b5761056b612187565b61069a898989848181106105bb576105bb612187565b6106a381612216565b9050610640565b505050505050505050565b6106c0338383610d46565b8260005b818110156106fe576106ee8686838181106106e1576106e1612187565b9050602002013533610daf565b6106f781612216565b90506106c4565b505050505050565b60008281526065602052604090206001015461072181610d39565b61072b8383610dd3565b505050565b6001600160a01b03811633146107a55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107af8282610e59565b5050565b6107be338383610d46565b61072b8333610daf565b6000805160206126d68339815191526107e081610d39565b6107eb848484610d46565b6107f58585610daf565b5050505050565b6000805160206126d683398151915261081481610d39565b61081f848484610d46565b8460005b8181101561085d5761084d88888381811061084057610840612187565b9050602002013587610daf565b61085681612216565b9050610823565b5050505050505050565b6000805160206126f683398151915261087f81610d39565b60006108946001600160a01b03851684610ec0565b9050806108b457604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260996020908152604080832080546001600160a01b039687166001600160a01b031991821617909155609a9092529091208054929093169116179055565b6000828152609a602052604081205461091d906001600160a01b0316308585610fe5565b9695505050505050565b6000805160206126f683398151915261093f81610d39565b61095585846109506103e88661222f565b611094565b6107f584846109666103e88661222f565b611145565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000828152609a60205260408120546109ba906001600160a01b0316308585610fe5565b506001600160801b031695945050505050565b6000805160206126f68339815191526109e581610d39565b61072b838361119b565b6000818152609a602052604081205481908190610a16906001600160a01b03163086611225565b919790965090945092505050565b600054610100900460ff1615808015610a445750600054600160ff909116105b80610a5e5750303b158015610a5e575060005460ff166001145b610ac15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161079c565b6000805460ff191660011790558015610ae4576000805461ff0019166101001790555b610aec6112cb565b610af7600085610dd3565b610b02600033610e59565b610b1a6000805160206126f683398151915284610dd3565b609880546001600160a01b038085166001600160a01b03199283161790925560978054928716929091169190911790558015610b90576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000805160206126f6833981519152610bae81610d39565b83828114610bcf57604051632627b42d60e11b815260040160405180910390fd5b60005b818110156106aa57610c1d89888884818110610bf057610bf0612187565b905060200201356103e8888886818110610c0c57610c0c612187565b90506020020135610950919061222f565b610c6088888884818110610c3357610c33612187565b905060200201356103e8888886818110610c4f57610c4f612187565b90506020020135610966919061222f565b610c6981612216565b9050610bd2565b600082815260656020526040902060010154610c8b81610d39565b61072b8383610e59565b6000610ca081610d39565b81610d2f576000848152609a6020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610d09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2d9190612246565b505b610b90848461119b565b610d438133611338565b50565b6098546040516305c8d5d960e21b81526001600160a01b0390911690631723576490610d7a90869086908690600401612263565b60006040518083038186803b158015610d9257600080fd5b505afa158015610da6573d6000803e3d6000fd5b50505050505050565b6000828152609a602052604090205461072b906001600160a01b0316308484611391565b610ddd828261096b565b6107af5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610e153390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610e63828261096b565b156107af5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610ece856114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610f0c57610f0c6122a3565b6040519080825280601f01601f191660200182016040528015610f36576020820181803683370190505b50604051602401610f4993929190612309565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610f9293925090600401612342565b6000604051808303816000875af1158015610fb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd99190810190612389565b50600195945050505050565b6000806000806000610ff689611683565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa15801561105d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110819190612451565b929c919b50995090975095505050505050565b6001600160a01b0383166110a757505050565b6000828152609a60205260408120546110cb906001600160a01b0316308587610fe5565b506001600160801b031692505050600082826110e791906124a1565b11611116576000838152609a6020526040902054611110906001600160a01b03163085876117e8565b50610b90565b6107f5838561112585856124a1565b6000878152609a60205260409020546001600160a01b0316929190611836565b6001600160a01b03831661115857505050565b6000828152609a602052604081205461117c906001600160a01b0316308587610fe5565b506001600160801b0316925050506107f58385848461112591906124b4565b6000828152609a60205260408120546111bf906001600160a01b03163085856118c3565b506000848152609a60205260409020549091506111e6906001600160a01b03168483611968565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910160405180910390a1505050565b600080600080600061123688611683565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b991906124c7565b94509450945094505093509350935093565b600054610100900460ff166113365760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161079c565b565b611342828261096b565b6107af5761134f81611a90565b61135a836020611aa2565b60405160200161136b92919061251d565b60408051601f198184030181529082905262461bcd60e51b825261079c91600401612592565b600080600061139f876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b038111156113df576113df6122a3565b6040519080825280601f01601f191660200182016040528015611409576020820181803683370190505b5060405160240161141e9594939291906125a5565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261146793925090600401612342565b6000604051808303816000875af1158015611486573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114ae9190810190612389565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661158157826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa15801561155a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061157e91906125e5565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156115e5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061160991906125e5565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b03821661166857611668612602565b6001600160a01b03811661167e5761167e612602565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661174857826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611721573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061174591906125e5565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156117ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d091906125e5565b90506001600160a01b03821661166857611668612602565b60008060006117f6876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b038111156113df576113df6122a3565b6000806000611844876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b03811115611884576118846122a3565b6040519080825280601f01601f1916602001820160405280156118ae576020820181803683370190505b5060405160240161141e959493929190612618565b60008060006118d187611683565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa158015611936573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195a919061265f565b925092505094509492505050565b6000806000611976866114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b038111156119b5576119b56122a3565b6040519080825280601f01601f1916602001820160405280156119df576020820181803683370190505b506040516024016119f3949392919061268b565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252611a3c93925090600401612342565b6000604051808303816000875af1158015611a5b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a839190810190612389565b5060019695505050505050565b60606104e36001600160a01b03831660145b60606000611ab183600261222f565b611abc9060026124b4565b6001600160401b03811115611ad357611ad36122a3565b6040519080825280601f01601f191660200182016040528015611afd576020820181803683370190505b509050600360fc1b81600081518110611b1857611b18612187565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611b4757611b47612187565b60200101906001600160f81b031916908160001a9053506000611b6b84600261222f565b611b769060016124b4565b90505b6001811115611bee576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611baa57611baa612187565b1a60f81b828281518110611bc057611bc0612187565b60200101906001600160f81b031916908160001a90535060049490941c93611be7816126be565b9050611b79565b508315611c3d5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161079c565b9392505050565b600060208284031215611c5657600080fd5b81356001600160e01b031981168114611c3d57600080fd5b60008083601f840112611c8057600080fd5b5081356001600160401b03811115611c9757600080fd5b6020830191508360208260051b8501011115611cb257600080fd5b9250929050565b60008060008060008060608789031215611cd257600080fd5b86356001600160401b0380821115611ce957600080fd5b611cf58a838b01611c6e565b90985096506020890135915080821115611d0e57600080fd5b611d1a8a838b01611c6e565b90965094506040890135915080821115611d3357600080fd5b50611d4089828a01611c6e565b979a9699509497509295939492505050565b600080600080600060608688031215611d6a57600080fd5b8535945060208601356001600160401b0380821115611d8857600080fd5b611d9489838a01611c6e565b90965094506040880135915080821115611dad57600080fd5b50611dba88828901611c6e565b969995985093965092949392505050565b60008083601f840112611ddd57600080fd5b5081356001600160401b03811115611df457600080fd5b602083019150836020828501011115611cb257600080fd5b60008060008060408587031215611e2257600080fd5b84356001600160401b0380821115611e3957600080fd5b611e4588838901611c6e565b90965094506020870135915080821115611e5e57600080fd5b50611e6b87828801611dcb565b95989497509550505050565b600060208284031215611e8957600080fd5b5035919050565b6001600160a01b0381168114610d4357600080fd5b60008060408385031215611eb857600080fd5b823591506020830135611eca81611e90565b809150509250929050565b600080600060408486031215611eea57600080fd5b8335925060208401356001600160401b03811115611f0757600080fd5b611f1386828701611dcb565b9497909650939450505050565b60008060008060608587031215611f3657600080fd5b843593506020850135611f4881611e90565b925060408501356001600160401b03811115611f6357600080fd5b611e6b87828801611dcb565b600080600080600060608688031215611f8757600080fd5b85356001600160401b0380821115611f9e57600080fd5b611faa89838a01611c6e565b909750955060208801359150611fbf82611e90565b90935060408701359080821115611fd557600080fd5b50611dba88828901611dcb565b600080600060608486031215611ff757600080fd5b833561200281611e90565b9250602084013561201281611e90565b929592945050506040919091013590565b6000806000806080858703121561203957600080fd5b843561204481611e90565b9350602085013561205481611e90565b93969395505050506040820135916060013590565b6000806040838503121561207c57600080fd5b50508035926020909101359150565b6000806000606084860312156120a057600080fd5b83356120ab81611e90565b925060208401356120bb81611e90565b915060408401356120cb81611e90565b809150509250925092565b600080600080600080608087890312156120ef57600080fd5b86356120fa81611e90565b9550602087013561210a81611e90565b945060408701356001600160401b038082111561212657600080fd5b6121328a838b01611c6e565b90965094506060890135915080821115611d3357600080fd5b8015158114610d4357600080fd5b60008060006060848603121561216e57600080fd5b833592506020840135915060408401356120cb8161214b565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156121af57600080fd5b8135611c3d81611e90565b6000808335601e198436030181126121d157600080fd5b8301803591506001600160401b038211156121eb57600080fd5b602001915036819003821315611cb257600080fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161222857612228612200565b5060010190565b80820281158282048414176104e3576104e3612200565b60006020828403121561225857600080fd5b8151611c3d8161214b565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156122d45781810151838201526020016122bc565b50506000910152565b600081518084526122f58160208601602086016122b9565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090612339908301846122dd565b95945050505050565b6001600160a01b0383168152606060208201819052600090612366908301846122dd565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b60006020828403121561239b57600080fd5b81516001600160401b03808211156123b257600080fd5b818401915084601f8301126123c657600080fd5b8151818111156123d8576123d86122a3565b604051601f8201601f19908116603f01168101908382118183101715612400576124006122a3565b8160405282815287602084870101111561241957600080fd5b61242a8360208301602088016122b9565b979650505050505050565b80516001600160801b038116811461244c57600080fd5b919050565b6000806000806080858703121561246757600080fd5b84516124728161214b565b60208601519094506124838161214b565b925061249160408601612435565b6060959095015193969295505050565b818103818111156104e3576104e3612200565b808201808211156104e3576104e3612200565b600080600080608085870312156124dd57600080fd5b84516124e88161214b565b93506124f660208601612435565b925061250460408601612435565b915061251260608601612435565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516125558160178501602088016122b9565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516125868160288401602088016122b9565b01602801949350505050565b602081526000611c3d60208301846122dd565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061242a908301846122dd565b6000602082840312156125f757600080fd5b8151611c3d81611e90565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061242a908301846122dd565b6000806040838503121561267257600080fd5b8251915061268260208401612435565b90509250929050565b60018060a01b038516815263ffffffff8416602082015282604082015260806060820152600061091d60808301846122dd565b6000816126cd576126cd612200565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca26469706673582212202cf747c17ad27ef3d17cee929f2bd07e1aa1ad70bb10abbafad36fd69d82ff2a64736f6c63430008130033", + "nonce": "0x4f2", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x0b2d706956e4a636da4bd672e0784bcd7645e4c8b9d6d3eac61581d7749558b9", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0xa765c364f57598f4175Cd482694a2934fD408CF9", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x3d17bd", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61364680620000f46000396000f3fe6080604052600436106102465760003560e01c806366748e9811610139578063a1db9782116100b6578063cb22e01b1161007a578063cb22e01b146106e0578063d5abeb01146106f3578063de7ecf8714610709578063e985e9c51461071f578063f2fde38b1461073f578063fe325e961461075f57600080fd5b8063a1db97821461064d578063a22cb4651461066d578063aa10820e1461068d578063b88d4fde146106ad578063c87b56dd146106c057600080fd5b8063715018a6116100fd578063715018a6146105be578063754b377c146105d35780638c72c54e146105fa5780638da5cb5b1461061a57806395d89b411461063857600080fd5b806366748e98146105065780636cc82b841461053e5780636dbdaae61461055e5780636f8b44b01461057e57806370a082311461059e57600080fd5b80632e37eef6116101c7578063493548441161018b57806349354844146104525780634b102262146104725780634c5dffea146104a657806355f804b3146104c65780636352211e146104e657600080fd5b80632e37eef6146103905780632fb3b361146103df5780634128541c146103ff57806342842e0e1461041f578063430ab18f1461043257600080fd5b8063180f1ea31161020e578063180f1ea31461030f57806318160ddd146103245780631c6d76751461034757806323b872dd146103675780632a778c9b1461037a57600080fd5b806301ffc9a71461024b57806306fdde0314610280578063075834cb146102a2578063081812fc146102c4578063095ea7b3146102fc575b600080fd5b34801561025757600080fd5b5061026b610266366004612a1f565b610774565b60405190151581526020015b60405180910390f35b34801561028c57600080fd5b50610295610785565b6040516102779190612a8c565b3480156102ae57600080fd5b506102c26102bd366004612afc565b610820565b005b3480156102d057600080fd5b506102e46102df366004612bcf565b610917565b6040516001600160a01b039091168152602001610277565b6102c261030a366004612be8565b610964565b34801561031b57600080fd5b506102c2610974565b34801561033057600080fd5b50610339610c0b565b604051908152602001610277565b34801561035357600080fd5b506069546102e4906001600160a01b031681565b6102c2610375366004612c14565b610c2b565b34801561038657600080fd5b50610339606a5481565b34801561039c57600080fd5b506103b06103ab366004612bcf565b610e2b565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610277565b3480156103eb57600080fd5b506102c26103fa366004612ce0565b610e74565b34801561040b57600080fd5b506065546102e4906001600160a01b031681565b6102c261042d366004612c14565b611106565b34801561043e57600080fd5b506102c261044d366004612d7b565b611126565b34801561045e57600080fd5b506067546102e4906001600160a01b031681565b34801561047e57600080fd5b506103397f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156104b257600080fd5b506102c26104c1366004612e12565b61116d565b3480156104d257600080fd5b506102c26104e1366004612ea7565b611185565b3480156104f257600080fd5b506102e4610501366004612bcf565b61119a565b34801561051257600080fd5b50610339610521366004612be8565b606e60209081526000928352604080842090915290825290205481565b34801561054a57600080fd5b506066546102e4906001600160a01b031681565b34801561056a57600080fd5b506102c2610579366004612bcf565b6111a5565b34801561058a57600080fd5b506102c2610599366004612bcf565b6111b2565b3480156105aa57600080fd5b506103396105b9366004612ee8565b6111e7565b3480156105ca57600080fd5b506102c261124f565b3480156105df57600080fd5b506105e8600181565b60405160ff9091168152602001610277565b34801561060657600080fd5b506068546102e4906001600160a01b031681565b34801561062657600080fd5b506033546001600160a01b03166102e4565b34801561064457600080fd5b50610295611263565b34801561065957600080fd5b506102c2610668366004612be8565b61129f565b34801561067957600080fd5b506102c2610688366004612f13565b611347565b34801561069957600080fd5b506102c26106a8366004612f4c565b6113c4565b6102c26106bb366004612fc0565b6115b4565b3480156106cc57600080fd5b506102956106db366004612bcf565b6115fe565b6102c26106ee366004612e12565b611759565b3480156106ff57600080fd5b50610339606f5481565b34801561071557600080fd5b50610339606b5481565b34801561072b57600080fd5b5061026b61073a36600461303f565b611995565b34801561074b57600080fd5b506102c261075a366004612ee8565b6119d2565b34801561076b57600080fd5b506102c2611a4b565b600061077f82611c1d565b92915050565b606061078f611c6b565b600201805461079d9061306d565b80601f01602080910402602001604051908101604052809291908181526020018280546107c99061306d565b80156108165780601f106107eb57610100808354040283529160200191610816565b820191906000526020600020905b8154815290600101906020018083116107f957829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061085a5761085a6130a1565b90600052602060002090600602016003015461087691906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b1580156108e357600080fd5b505af11580156108f7573d6000803e3d6000fd5b5050505061090a8b8b8b87878787611c8f565b5050505050505050505050565b600061092282611f40565b61093f576040516333d1c03960e21b815260040160405180910390fd5b610947611c6b565b60009283526006016020525060409020546001600160a01b031690565b61097082826001611f89565b5050565b61097c61203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156109d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fa91906130e4565b90925090506001600160a01b038216610a2657604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a939190613112565b90506000612710610aa484846130cd565b610aae919061312b565b90506000610abc828461314d565b90508015610b5e5760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3c9190613160565b905080610b5c57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c045760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610bbe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be29190613160565b905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610c17611c6b565b60010154610c23611c6b565b540303919050565b6000610c3682612098565b9050836001600160a01b0316816001600160a01b031614610c695760405162a1148160e81b815260040160405180910390fd5b600080610c7584612145565b91509150610c9a8187610c853390565b6001600160a01b039081169116811491141790565b610cc557610ca88633611995565b610cc557604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610cec57604051633a954ecd60e21b815260040160405180910390fd5b610cf9868686600161216d565b8015610d0457600082555b610d0c611c6b565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610d38611c6b565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d6f611c6b565b60008681526004919091016020526040812091909155600160e11b84169003610de55760018401610d9e611c6b565b600082815260049190910160205260408120549003610de357610dbf611c6b565b548114610de35783610dcf611c6b565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610c02565b606d8181548110610e3b57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b6000805160206135f183398151915254610100900460ff16610ea9576000805160206135f18339815191525460ff1615610ead565b303b155b610f245760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b6000805160206135f183398151915254610100900460ff16158015610f60576000805160206135f1833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f805750600054600160ff909116105b80610f9a5750303b158015610f9a575060005460ff166001145b610ffd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610f1b565b6000805460ff191660011790558015611020576000805461ff0019166101001790555b61103983604051806020016040528060008152506121f4565b611041612232565b61104a87612261565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a169290911691909117905580156110df576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610c025750506000805160206135f1833981519152805461ff001916905550505050565b611121838383604051806020016040528060008152506115b4565b505050565b61112e61203e565b606f8890558786111561115457604051632627b42d60e11b815260040160405180910390fd5b611163878787878787876122b3565b5050505050505050565b61117c87878787878787611c8f565b50505050505050565b61118d61203e565b606c6111218284836131c3565b600061077f82612098565b6111ad61203e565b606b55565b6111ba61203e565b6111c26123f6565b8110156111e257604051632627b42d60e11b815260040160405180910390fd5b606f55565b60006001600160a01b038216611210576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611220611c6b565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61125761203e565b6112616000612261565b565b6060606a5460001461129c5761127a606a54612409565b60405160200161128a9190613282565b60405160208183030381529060405290505b90565b6112a761203e565b6069546001600160a01b03908116908316036112d657604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611323573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111219190613160565b80611350611c6b565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113cc61203e565b606d54156113e0576113e0606d60006129ad565b600081815b8181101561157a576000858583818110611401576114016130a1565b905060c0020180360381019061141791906132ac565b9050838160000151108061142f575060208101518151115b1561144d57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506115738161332b565b90506113e5565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6115bf848484610c2b565b6001600160a01b0383163b156115f8576115db8484848461249b565b6115f8576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061160982611f40565b61162657604051632627b42d60e11b815260040160405180910390fd5b6000611630612586565b9050805160000361165257604051806020016040528060008152509150611753565b6040805160018082528183019092526000916020820181803683370190505090508160018351611682919061314d565b81518110611692576116926130a1565b602001015160f81c60f81b816000815181106116b0576116b06130a1565b60200101906001600160f81b031916908160001a905350604051602f60f81b6020820152819060210160405160208183030381529060405280519060200120816040516020016117009190613344565b604051602081830303815290604052805190602001200361174c578261172586612595565b604051602001611736929190613360565b6040516020818303038152906040529350611750565b8293505b50505b50919050565b6117648783836125d9565b61176d86612639565b61178a576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061179f5761179f6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f54909150866118086123f6565b611812919061338f565b1115611831576040516322eb5e9560e21b815260040160405180910390fd5b8060a001516118d0576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611872908b9030908c908b908b906004016133cb565b602060405180830381865afa15801561188f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118b39190613160565b6118d0576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b845290915290205461190490889061338f565b111561192357604051631d66b65960e11b815260040160405180910390fd5b85816040015161193391906130cd565b3414611952576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a84529091528120805488929061198590849061338f565b90915550611163905088876126ea565b600061199f611c6b565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6119da61203e565b6001600160a01b038116611a3f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610f1b565b611a4881612261565b50565b611a5361203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611aad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad191906130e4565b90925090506001600160a01b038216611afd57604051632627b42d60e11b815260040160405180910390fd5b476000612710611b0d84846130cd565b611b17919061312b565b90506000611b25828461314d565b90508015611ba3576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611b7a576040519150601f19603f3d011682016040523d82523d6000602084013e611b7f565b606091505b5050905080611ba157604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c04576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611bf6576040519150601f19603f3d011682016040523d82523d6000602084013e611bfb565b606091505b5050905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611c4e57506380ac58cd60e01b6001600160e01b03198316145b8061077f5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611c9a8783836125d9565b6069546001600160a01b0316611cc357604051632d1f608d60e11b815260040160405180910390fd5b611ccc86612639565b611ce9576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611cfe57611cfe6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f5490915086611d676123f6565b611d71919061338f565b1115611d90576040516322eb5e9560e21b815260040160405180910390fd5b8060a00151611e2f576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611dd1908b9030908c908b908b906004016133cb565b602060405180830381865afa158015611dee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e129190613160565b611e2f576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b8452909152902054611e6390889061338f565b1115611e8257604051631d66b65960e11b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611eab908b906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611eff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f239190613160565b61195257604051635b88974760e11b815260040160405180910390fd5b600081600111158015611f5a5750611f56611c6b565b5482105b801561077f5750600160e01b611f6e611c6b565b60008481526004919091016020526040902054161592915050565b6000611f948361119a565b90508115611fd357336001600160a01b03821614611fd357611fb68133611995565b611fd3576040516367d9dca160e11b815260040160405180910390fd5b83611fdc611c6b565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146112615760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610f1b565b60008160011161212c576120aa611c6b565b600083815260049190910160205260408120549150600160e01b8216900361212c5780600003612127576120dc611c6b565b5482106120fc57604051636f96cda160e11b815260040160405180910390fd5b612104611c6b565b6000199092016000818152600493909301602052604090922054905080156120fc575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000612152611c6b565b60009485526006016020525050604090912080549092909150565b606b54156115f857606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156121e057600080fd5b505af1158015611163573d6000803e3d6000fd5b6000805160206135f183398151915254610100900460ff166122285760405162461bcd60e51b8152600401610f1b9061340a565b6109708282612832565b600054610100900460ff166122595760405162461bcd60e51b8152600401610f1b9061345e565b6112616128a5565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a54156122d4576040516302d1671b60e41b815260040160405180910390fd5b861580156122ea57506001600160a01b03841615155b8061230657506001600160a01b03841615801561230657508615155b1561232457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015612381573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123a59190613112565b606a556001600160a01b038316156123d357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c6123e58284836131c3565b50851561117c5761117c85876126ea565b60006001612402611c6b565b5403919050565b60606000612416836128d5565b60010190506000816001600160401b0381111561243557612435612c55565b6040519080825280601f01601f19166020018201604052801561245f576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461246957509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906124d09033908990889088906004016134a9565b6020604051808303816000875af192505050801561250b575060408051601f3d908101601f19168201909252612508918101906134e6565b60015b612569573d808015612539576040519150601f19603f3d011682016040523d82523d6000602084013e61253e565b606091505b508051600003612561576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461079d9061306d565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a9004806125af5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061260d90869086908690600401613503565b60006040518083038186803b15801561262557600080fd5b505afa15801561117c573d6000803e3d6000fd5b606d54600090821061265e57604051632627b42d60e11b815260040160405180910390fd5b6000606d8381548110612673576126736130a1565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906126e35750428160200151115b9392505050565b60006126f4611c6b565b54905060008290036127195760405163b562e8dd60e01b815260040160405180910390fd5b612726600084838561216d565b68010000000000000001820261273a611c6b565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717612775611c6b565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146127ff57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001016127c7565b508160000361282057604051622e076360e81b815260040160405180910390fd5b80612829611c6b565b55506111219050565b6000805160206135f183398151915254610100900460ff166128665760405162461bcd60e51b8152600401610f1b9061340a565b8161286f611c6b565b6002019061287d9082613531565b5080612887611c6b565b600301906128959082613531565b5060016128a0611c6b565b555050565b600054610100900460ff166128cc5760405162461bcd60e51b8152600401610f1b9061345e565b61126133612261565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106129145772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612940576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061295e57662386f26fc10000830492506010015b6305f5e1008310612976576305f5e100830492506008015b612710831061298a57612710830492506004015b6064831061299c576064830492506002015b600a831061077f5760010192915050565b5080546000825560060290600052602060002090810190611a4891905b80821115612a05576000808255600182018190556002820181905560038201819055600482015560058101805460ff191690556006016129ca565b5090565b6001600160e01b031981168114611a4857600080fd5b600060208284031215612a3157600080fd5b81356126e381612a09565b60005b83811015612a57578181015183820152602001612a3f565b50506000910152565b60008151808452612a78816020860160208601612a3c565b601f01601f19169290920160200192915050565b6020815260006126e36020830184612a60565b6001600160a01b0381168114611a4857600080fd5b60008083601f840112612ac657600080fd5b5081356001600160401b03811115612add57600080fd5b602083019150836020828501011115612af557600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215612b1e57600080fd5b612b288c35612a9f565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff81168114612b5557600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d0135811015612b7e57600080fd5b612b8e8e60e08f01358f01612ab4565b90955093506101008d0135811015612ba557600080fd5b50612bb78d6101008e01358e01612ab4565b81935080925050509295989b509295989b9093969950565b600060208284031215612be157600080fd5b5035919050565b60008060408385031215612bfb57600080fd5b8235612c0681612a9f565b946020939093013593505050565b600080600060608486031215612c2957600080fd5b8335612c3481612a9f565b92506020840135612c4481612a9f565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612c8557612c85612c55565b604051601f8501601f19908116603f01168101908282118183101715612cad57612cad612c55565b81604052809350858152868686011115612cc657600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612cf857600080fd5b8535612d0381612a9f565b94506020860135612d1381612a9f565b93506040860135612d2381612a9f565b92506060860135612d3381612a9f565b915060808601356001600160401b03811115612d4e57600080fd5b8601601f81018813612d5f57600080fd5b612d6e88823560208401612c6b565b9150509295509295909350565b60008060008060008060008060e0898b031215612d9757600080fd5b8835975060208901359650604089013595506060890135612db781612a9f565b94506080890135612dc781612a9f565b935060a0890135612dd781612a9f565b925060c08901356001600160401b03811115612df257600080fd5b612dfe8b828c01612ab4565b999c989b5096995094979396929594505050565b600080600080600080600060a0888a031215612e2d57600080fd5b8735612e3881612a9f565b9650602088013595506040880135945060608801356001600160401b0380821115612e6257600080fd5b612e6e8b838c01612ab4565b909650945060808a0135915080821115612e8757600080fd5b50612e948a828b01612ab4565b989b979a50959850939692959293505050565b60008060208385031215612eba57600080fd5b82356001600160401b03811115612ed057600080fd5b612edc85828601612ab4565b90969095509350505050565b600060208284031215612efa57600080fd5b81356126e381612a9f565b8015158114611a4857600080fd5b60008060408385031215612f2657600080fd5b8235612f3181612a9f565b91506020830135612f4181612f05565b809150509250929050565b60008060208385031215612f5f57600080fd5b82356001600160401b0380821115612f7657600080fd5b818501915085601f830112612f8a57600080fd5b813581811115612f9957600080fd5b86602060c083028501011115612fae57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612fd657600080fd5b8435612fe181612a9f565b93506020850135612ff181612a9f565b92506040850135915060608501356001600160401b0381111561301357600080fd5b8501601f8101871361302457600080fd5b61303387823560208401612c6b565b91505092959194509250565b6000806040838503121561305257600080fd5b823561305d81612a9f565b91506020830135612f4181612a9f565b600181811c9082168061308157607f821691505b60208210810361175357634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761077f5761077f6130b7565b600080604083850312156130f757600080fd5b825161310281612a9f565b6020939093015192949293505050565b60006020828403121561312457600080fd5b5051919050565b60008261314857634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561077f5761077f6130b7565b60006020828403121561317257600080fd5b81516126e381612f05565b601f82111561112157600081815260208120601f850160051c810160208610156131a45750805b601f850160051c820191505b81811015610c02578281556001016131b0565b6001600160401b038311156131da576131da612c55565b6131ee836131e8835461306d565b8361317d565b6000601f841160018114613222576000851561320a5750838201355b600019600387901b1c1916600186901b178355610c04565b600083815260209020601f19861690835b828110156132535786850135825560209485019460019092019101613233565b50868210156132705760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b81526000825161329f816002850160208701612a3c565b9190910160020192915050565b600060c082840312156132be57600080fd5b60405160c081018181106001600160401b03821117156132e0576132e0612c55565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561331f81612f05565b60a08201529392505050565b60006001820161333d5761333d6130b7565b5060010190565b60008251613356818460208701612a3c565b9190910192915050565b60008351613372818460208801612a3c565b835190830190613386818360208801612a3c565b01949350505050565b8082018082111561077f5761077f6130b7565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b03868116825285166020820152604081018490526080606082018190526000906133ff90830184866133a2565b979650505050505050565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906134dc90830184612a60565b9695505050505050565b6000602082840312156134f857600080fd5b81516126e381612a09565b6001600160a01b038416815260406020820181905260009061352890830184866133a2565b95945050505050565b81516001600160401b0381111561354a5761354a612c55565b61355e81613558845461306d565b8461317d565b602080601f831160018114613593576000841561357b5750858301515b600019600386901b1c1916600185901b178555610c02565b600085815260208120601f198616915b828110156135c2578886015182559484019460019091019084016135a3565b50858210156135e05787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220515503e22fdd6aa41a7f1ead0718a036029ff0c2ebd762dd021a3b7635b7249464736f6c63430008130033", + "nonce": "0x4f3", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xd2dd252aa53fa8d07f148b36ad079374acf52e2f2d5a75850d30edf1e22399ae", + "transactionType": "CREATE", + "contractName": "ERC721ABOE", + "contractAddress": "0x12905691B20F5045EC76cC0be411199051206230", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x3b2cf4", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61348780620000f46000396000f3fe6080604052600436106102305760003560e01c806366748e981161012e578063a1db9782116100ab578063cb22e01b1161006f578063cb22e01b146106aa578063de7ecf87146106bd578063e985e9c5146106d3578063f2fde38b146106f3578063fe325e961461071357600080fd5b8063a1db978214610617578063a22cb46514610637578063aa10820e14610657578063b88d4fde14610677578063c87b56dd1461068a57600080fd5b8063754b377c116100f2578063754b377c1461057d5780638c72c54e146105a45780638d6d31e3146105c45780638da5cb5b146105e457806395d89b411461060257600080fd5b806366748e98146104d05780636cc82b84146105085780636dbdaae61461052857806370a0823114610548578063715018a61461056857600080fd5b80632a778c9b116101bc5780634935484411610180578063493548441461041c5780634b1022621461043c5780634c5dffea1461047057806355f804b3146104905780636352211e146104b057600080fd5b80632a778c9b146103645780632e37eef61461037a5780632fb3b361146103c95780634128541c146103e957806342842e0e1461040957600080fd5b8063095ea7b311610203578063095ea7b3146102e6578063180f1ea3146102f957806318160ddd1461030e5780631c6d76751461033157806323b872dd1461035157600080fd5b806301ffc9a71461023557806306fdde031461026a578063075834cb1461028c578063081812fc146102ae575b600080fd5b34801561024157600080fd5b5061025561025036600461287c565b610728565b60405190151581526020015b60405180910390f35b34801561027657600080fd5b5061027f610739565b60405161026191906128e9565b34801561029857600080fd5b506102ac6102a7366004612959565b6107d4565b005b3480156102ba57600080fd5b506102ce6102c9366004612a2c565b6108cb565b6040516001600160a01b039091168152602001610261565b6102ac6102f4366004612a45565b610918565b34801561030557600080fd5b506102ac610928565b34801561031a57600080fd5b50610323610bbf565b604051908152602001610261565b34801561033d57600080fd5b506069546102ce906001600160a01b031681565b6102ac61035f366004612a71565b610bdf565b34801561037057600080fd5b50610323606a5481565b34801561038657600080fd5b5061039a610395366004612a2c565b610ddf565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610261565b3480156103d557600080fd5b506102ac6103e4366004612b3d565b610e28565b3480156103f557600080fd5b506065546102ce906001600160a01b031681565b6102ac610417366004612a71565b6110ba565b34801561042857600080fd5b506067546102ce906001600160a01b031681565b34801561044857600080fd5b506103237fdcfc50123fc6ea3c803b5b1b4cbbc9ce5b81f13451fd3124e43ef593fd840d1981565b34801561047c57600080fd5b506102ac61048b366004612bd8565b6110da565b34801561049c57600080fd5b506102ac6104ab366004612c6d565b6110f2565b3480156104bc57600080fd5b506102ce6104cb366004612a2c565b611107565b3480156104dc57600080fd5b506103236104eb366004612a45565b606e60209081526000928352604080842090915290825290205481565b34801561051457600080fd5b506066546102ce906001600160a01b031681565b34801561053457600080fd5b506102ac610543366004612a2c565b611112565b34801561055457600080fd5b50610323610563366004612cae565b61111f565b34801561057457600080fd5b506102ac611187565b34801561058957600080fd5b50610592600181565b60405160ff9091168152602001610261565b3480156105b057600080fd5b506068546102ce906001600160a01b031681565b3480156105d057600080fd5b506102ac6105df366004612ccb565b61119b565b3480156105f057600080fd5b506033546001600160a01b03166102ce565b34801561060e57600080fd5b5061027f6111b2565b34801561062357600080fd5b506102ac610632366004612a45565b6111ee565b34801561064357600080fd5b506102ac610652366004612d54565b611296565b34801561066357600080fd5b506102ac610672366004612d8d565b611313565b6102ac610685366004612e01565b611503565b34801561069657600080fd5b5061027f6106a5366004612a2c565b61154d565b6102ac6106b8366004612bd8565b6116a8565b3480156106c957600080fd5b50610323606b5481565b3480156106df57600080fd5b506102556106ee366004612e80565b61184d565b3480156106ff57600080fd5b506102ac61070e366004612cae565b61188a565b34801561071f57600080fd5b506102ac611903565b600061073382611ad5565b92915050565b6060610743611b23565b600201805461075190612eae565b80601f016020809104026020016040519081016040528092919081815260200182805461077d90612eae565b80156107ca5780601f1061079f576101008083540402835291602001916107ca565b820191906000526020600020905b8154815290600101906020018083116107ad57829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061080e5761080e612ee2565b90600052602060002090600602016003015461082a9190612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b15801561089757600080fd5b505af11580156108ab573d6000803e3d6000fd5b505050506108be8b8b8b87878787611b47565b5050505050505050505050565b60006108d682611db0565b6108f3576040516333d1c03960e21b815260040160405180910390fd5b6108fb611b23565b60009283526006016020525060409020546001600160a01b031690565b61092482826001611df9565b5050565b610930611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa15801561098a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ae9190612f25565b90925090506001600160a01b0382166109da57604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a479190612f53565b90506000612710610a588484612f0e565b610a629190612f6c565b90506000610a708284612f8e565b90508015610b125760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610acc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af09190612fa1565b905080610b1057604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb85760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b969190612fa1565b905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610bcb611b23565b60010154610bd7611b23565b540303919050565b6000610bea82611f08565b9050836001600160a01b0316816001600160a01b031614610c1d5760405162a1148160e81b815260040160405180910390fd5b600080610c2984611fb5565b91509150610c4e8187610c393390565b6001600160a01b039081169116811491141790565b610c7957610c5c863361184d565b610c7957604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610ca057604051633a954ecd60e21b815260040160405180910390fd5b610cad8686866001611fdd565b8015610cb857600082555b610cc0611b23565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610cec611b23565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d23611b23565b60008681526004919091016020526040812091909155600160e11b84169003610d995760018401610d52611b23565b600082815260049190910160205260408120549003610d9757610d73611b23565b548114610d975783610d83611b23565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610bb6565b606d8181548110610def57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b60008051602061343283398151915254610100900460ff16610e5d576000805160206134328339815191525460ff1615610e61565b303b155b610ed85760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b60008051602061343283398151915254610100900460ff16158015610f1457600080516020613432833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f345750600054600160ff909116105b80610f4e5750303b158015610f4e575060005460ff166001145b610fb15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610ecf565b6000805460ff191660011790558015610fd4576000805461ff0019166101001790555b610fed8360405180602001604052806000815250612064565b610ff56120a2565b610ffe876120d1565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a16929091169190911790558015611093576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610bb6575050600080516020613432833981519152805461ff001916905550505050565b6110d583838360405180602001604052806000815250611503565b505050565b6110e987878787878787611b47565b50505050505050565b6110fa611eae565b606c6110d5828483613004565b600061073382611f08565b61111a611eae565b606b55565b60006001600160a01b038216611148576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611158611b23565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61118f611eae565b61119960006120d1565b565b6111a3611eae565b6110e987878787878787612123565b6060606a546000146111eb576111c9606a54612266565b6040516020016111d991906130c3565b60405160208183030381529060405290505b90565b6111f6611eae565b6069546001600160a01b039081169083160361122557604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611272573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d59190612fa1565b8061129f611b23565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61131b611eae565b606d541561132f5761132f606d600061280a565b600081815b818110156114c957600085858381811061135057611350612ee2565b905060c0020180360381019061136691906130ed565b9050838160000151108061137e575060208101518151115b1561139c57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506114c28161316c565b9050611334565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b61150e848484610bdf565b6001600160a01b0383163b156115475761152a848484846122f8565b611547576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061155882611db0565b61157557604051632627b42d60e11b815260040160405180910390fd5b600061157f6123e3565b905080516000036115a1576040518060200160405280600081525091506116a2565b60408051600180825281830190925260009160208201818036833701905050905081600183516115d19190612f8e565b815181106115e1576115e1612ee2565b602001015160f81c60f81b816000815181106115ff576115ff612ee2565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161164f9190613185565b604051602081830303815290604052805190602001200361169b5782611674866123f2565b6040516020016116859291906131a1565b604051602081830303815290604052935061169f565b8293505b50505b50919050565b606a546000036116cb576040516316812a5360e11b815260040160405180910390fd5b6116d6878383612436565b6116df86612496565b6116fc576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061171157611711612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820181905290915061180a576066546040516332f1944960e21b81526001600160a01b039091169063cbc65124906117ac908b9030908c908b908b906004016131f9565b602060405180830381865afa1580156117c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ed9190612fa1565b61180a576040516352c973a760e01b815260040160405180910390fd5b85816040015161181a9190612f0e565b3414611839576040516318f4198360e21b815260040160405180910390fd5b6118438887612547565b5050505050505050565b6000611857611b23565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b611892611eae565b6001600160a01b0381166118f75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610ecf565b611900816120d1565b50565b61190b611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611965573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119899190612f25565b90925090506001600160a01b0382166119b557604051632627b42d60e11b815260040160405180910390fd5b4760006127106119c58484612f0e565b6119cf9190612f6c565b905060006119dd8284612f8e565b90508015611a5b576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611a32576040519150601f19603f3d011682016040523d82523d6000602084013e611a37565b606091505b5050905080611a5957604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb8576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611aae576040519150601f19603f3d011682016040523d82523d6000602084013e611ab3565b606091505b5050905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611b0657506380ac58cd60e01b6001600160e01b03198316145b806107335750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611b52878383612436565b6069546001600160a01b0316611b7b57604051632d1f608d60e11b815260040160405180910390fd5b611b8486612496565b611ba1576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611bb657611bb6612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a08201819052909150611caf576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611c51908b9030908c908b908b906004016131f9565b602060405180830381865afa158015611c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c929190612fa1565b611caf576040516352c973a760e01b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611cd8908b90612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611d2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d509190612fa1565b611d6d57604051635b88974760e11b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a845290915281208054889290611da0908490613238565b9091555061184390508887612547565b600081600111158015611dca5750611dc6611b23565b5482105b80156107335750600160e01b611dde611b23565b60008481526004919091016020526040902054161592915050565b6000611e0483611107565b90508115611e4357336001600160a01b03821614611e4357611e26813361184d565b611e43576040516367d9dca160e11b815260040160405180910390fd5b83611e4c611b23565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146111995760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610ecf565b600081600111611f9c57611f1a611b23565b600083815260049190910160205260408120549150600160e01b82169003611f9c5780600003611f9757611f4c611b23565b548210611f6c57604051636f96cda160e11b815260040160405180910390fd5b611f74611b23565b600019909201600081815260049390930160205260409092205490508015611f6c575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611fc2611b23565b60009485526006016020525050604090912080549092909150565b606b541561154757606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b15801561205057600080fd5b505af1158015611843573d6000803e3d6000fd5b60008051602061343283398151915254610100900460ff166120985760405162461bcd60e51b8152600401610ecf9061324b565b610924828261268f565b600054610100900460ff166120c95760405162461bcd60e51b8152600401610ecf9061329f565b611199612702565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a5415612144576040516302d1671b60e41b815260040160405180910390fd5b8615801561215a57506001600160a01b03841615155b8061217657506001600160a01b03841615801561217657508615155b1561219457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af11580156121f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122159190612f53565b606a556001600160a01b0383161561224357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c612255828483613004565b5085156110e9576110e98587612547565b6060600061227383612732565b60010190506000816001600160401b0381111561229257612292612ab2565b6040519080825280601f01601f1916602001820160405280156122bc576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846122c657509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a029061232d9033908990889088906004016132ea565b6020604051808303816000875af1925050508015612368575060408051601f3d908101601f1916820190925261236591810190613327565b60015b6123c6573d808015612396576040519150601f19603f3d011682016040523d82523d6000602084013e61239b565b606091505b5080516000036123be576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461075190612eae565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a90048061240c5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061246a90869086908690600401613344565b60006040518083038186803b15801561248257600080fd5b505afa1580156110e9573d6000803e3d6000fd5b606d5460009082106124bb57604051632627b42d60e11b815260040160405180910390fd5b6000606d83815481106124d0576124d0612ee2565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906125405750428160200151115b9392505050565b6000612551611b23565b54905060008290036125765760405163b562e8dd60e01b815260040160405180910390fd5b6125836000848385611fdd565b680100000000000000018202612597611b23565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b17176125d2611b23565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b81811461265c57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101612624565b508160000361267d57604051622e076360e81b815260040160405180910390fd5b80612686611b23565b55506110d59050565b60008051602061343283398151915254610100900460ff166126c35760405162461bcd60e51b8152600401610ecf9061324b565b816126cc611b23565b600201906126da9082613372565b50806126e4611b23565b600301906126f29082613372565b5060016126fd611b23565b555050565b600054610100900460ff166127295760405162461bcd60e51b8152600401610ecf9061329f565b611199336120d1565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106127715772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061279d576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106127bb57662386f26fc10000830492506010015b6305f5e10083106127d3576305f5e100830492506008015b61271083106127e757612710830492506004015b606483106127f9576064830492506002015b600a83106107335760010192915050565b508054600082556006029060005260206000209081019061190091905b80821115612862576000808255600182018190556002820181905560038201819055600482015560058101805460ff19169055600601612827565b5090565b6001600160e01b03198116811461190057600080fd5b60006020828403121561288e57600080fd5b813561254081612866565b60005b838110156128b457818101518382015260200161289c565b50506000910152565b600081518084526128d5816020860160208601612899565b601f01601f19169290920160200192915050565b60208152600061254060208301846128bd565b6001600160a01b038116811461190057600080fd5b60008083601f84011261292357600080fd5b5081356001600160401b0381111561293a57600080fd5b60208301915083602082850101111561295257600080fd5b9250929050565b60008060008060008060008060008060006101208c8e03121561297b57600080fd5b6129858c356128fc565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff811681146129b257600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d01358110156129db57600080fd5b6129eb8e60e08f01358f01612911565b90955093506101008d0135811015612a0257600080fd5b50612a148d6101008e01358e01612911565b81935080925050509295989b509295989b9093969950565b600060208284031215612a3e57600080fd5b5035919050565b60008060408385031215612a5857600080fd5b8235612a63816128fc565b946020939093013593505050565b600080600060608486031215612a8657600080fd5b8335612a91816128fc565b92506020840135612aa1816128fc565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612ae257612ae2612ab2565b604051601f8501601f19908116603f01168101908282118183101715612b0a57612b0a612ab2565b81604052809350858152868686011115612b2357600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612b5557600080fd5b8535612b60816128fc565b94506020860135612b70816128fc565b93506040860135612b80816128fc565b92506060860135612b90816128fc565b915060808601356001600160401b03811115612bab57600080fd5b8601601f81018813612bbc57600080fd5b612bcb88823560208401612ac8565b9150509295509295909350565b600080600080600080600060a0888a031215612bf357600080fd5b8735612bfe816128fc565b9650602088013595506040880135945060608801356001600160401b0380821115612c2857600080fd5b612c348b838c01612911565b909650945060808a0135915080821115612c4d57600080fd5b50612c5a8a828b01612911565b989b979a50959850939692959293505050565b60008060208385031215612c8057600080fd5b82356001600160401b03811115612c9657600080fd5b612ca285828601612911565b90969095509350505050565b600060208284031215612cc057600080fd5b8135612540816128fc565b600080600080600080600060c0888a031215612ce657600080fd5b87359650602088013595506040880135612cff816128fc565b94506060880135612d0f816128fc565b93506080880135612d1f816128fc565b925060a08801356001600160401b03811115612d3a57600080fd5b612c5a8a828b01612911565b801515811461190057600080fd5b60008060408385031215612d6757600080fd5b8235612d72816128fc565b91506020830135612d8281612d46565b809150509250929050565b60008060208385031215612da057600080fd5b82356001600160401b0380821115612db757600080fd5b818501915085601f830112612dcb57600080fd5b813581811115612dda57600080fd5b86602060c083028501011115612def57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612e1757600080fd5b8435612e22816128fc565b93506020850135612e32816128fc565b92506040850135915060608501356001600160401b03811115612e5457600080fd5b8501601f81018713612e6557600080fd5b612e7487823560208401612ac8565b91505092959194509250565b60008060408385031215612e9357600080fd5b8235612e9e816128fc565b91506020830135612d82816128fc565b600181811c90821680612ec257607f821691505b6020821081036116a257634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761073357610733612ef8565b60008060408385031215612f3857600080fd5b8251612f43816128fc565b6020939093015192949293505050565b600060208284031215612f6557600080fd5b5051919050565b600082612f8957634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561073357610733612ef8565b600060208284031215612fb357600080fd5b815161254081612d46565b601f8211156110d557600081815260208120601f850160051c81016020861015612fe55750805b601f850160051c820191505b81811015610bb657828155600101612ff1565b6001600160401b0383111561301b5761301b612ab2565b61302f836130298354612eae565b83612fbe565b6000601f841160018114613063576000851561304b5750838201355b600019600387901b1c1916600186901b178355610bb8565b600083815260209020601f19861690835b828110156130945786850135825560209485019460019092019101613074565b50868210156130b15760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b8152600082516130e0816002850160208701612899565b9190910160020192915050565b600060c082840312156130ff57600080fd5b60405160c081018181106001600160401b038211171561312157613121612ab2565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561316081612d46565b60a08201529392505050565b60006001820161317e5761317e612ef8565b5060010190565b60008251613197818460208701612899565b9190910192915050565b600083516131b3818460208801612899565b8351908301906131c7818360208801612899565b01949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b038681168252851660208201526040810184905260806060820181905260009061322d90830184866131d0565b979650505050505050565b8082018082111561073357610733612ef8565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061331d908301846128bd565b9695505050505050565b60006020828403121561333957600080fd5b815161254081612866565b6001600160a01b038416815260406020820181905260009061336990830184866131d0565b95945050505050565b81516001600160401b0381111561338b5761338b612ab2565b61339f816133998454612eae565b84612fbe565b602080601f8311600181146133d457600084156133bc5750858301515b600019600386901b1c1916600185901b178555610bb6565b600085815260208120601f198616915b82811015613403578886015182559484019460019091019084016133e4565b50858210156134215787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa26469706673582212203aabe44c2c1beaefd8e913364be7982fe9ebedd320dbc00c62dcd64b800e7bbd64736f6c63430008130033", + "nonce": "0x4f4", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x2644ab5f1ef6fb1b5f01818885f0ee539409db27dad3686f64a81e351fed16b5", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0x7A700EeF6Abf340DF822202730ce1CcC807B575e", + "function": null, + "arguments": [], + "transaction": { + "type": "0x02", + "from": "0xd71256ec24925873ce9e9f085f89864ca05970bd", + "gas": "0x1f76b5", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611b41806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106102115760003560e01c80637d2405bb11610125578063b7dd8d20116100ad578063d547741f1161007c578063d547741f14610494578063d57f966b146104a7578063d8f4b6fd146104b0578063f339b08e146104c5578063fdbda0ec146104d857600080fd5b8063b7dd8d2014610446578063ba4f11c914610459578063bdd2fe781461046c578063cfc5a0c01461047f57600080fd5b80638e837abf116100f45780638e837abf146103f257806391d148541461040557806398eaa0c0146104185780639f1fb80d1461042b578063a217fddf1461043e57600080fd5b80637d2405bb146103a6578063832ca2f5146103b957806385be1c15146103cc5780638d058ac8146103df57600080fd5b806336568abe116101a85780634eb6b7f6116101775780634eb6b7f614610347578063641254bd1461035a578063678213491461036d5780636b7e3949146103805780636cc82b841461039357600080fd5b806336568abe146102fb5780634128541c1461030e57806347fcac3b146103215780634c7dfac31461033457600080fd5b80631ce6e444116101e45780631ce6e444146102915780631e5b3684146102a4578063248a9ca3146102b75780632f2ff15d146102e857600080fd5b806301ffc9a7146102165780631459457a1461023e57806318c25d8a146102535780631c8518c214610266575b600080fd5b61022961022436600461161d565b61050b565b60405190151581526020015b60405180910390f35b61025161024c36600461165e565b610542565b005b6102516102613660046116c3565b6106c3565b609b54610279906001600160a01b031681565b6040516001600160a01b039091168152602001610235565b609a54610279906001600160a01b031681565b6102516102b23660046116ed565b61083d565b6102da6102c53660046116ed565b60009081526065602052604090206001015490565b604051908152602001610235565b6102516102f6366004611706565b6108ef565b610251610309366004611706565b610914565b609854610279906001600160a01b031681565b61027961032f3660046116c3565b610992565b610229610342366004611732565b6109a6565b609e54610279906001600160a01b031681565b610251610368366004611732565b6109c0565b61025161037b36600461174d565b6109ee565b61025161038e366004611732565b610ad6565b609954610279906001600160a01b031681565b6102516103b4366004611732565b610b06565b6102516103c7366004611732565b610b34565b6102516103da366004611706565b610b62565b6102796103ed3660046116ed565b610be8565b610251610400366004611732565b610c02565b610229610413366004611706565b610c30565b610279610426366004611789565b610c5b565b61025161043936600461184e565b610c8f565b6102da600081565b6102516104543660046118b4565b610dc0565b6102da610467366004611732565b610e94565b609c54610279906001600160a01b031681565b6102da600080516020611acc83398151915281565b6102516104a2366004611706565b610f32565b6102da609d5481565b6102da600080516020611aec83398151915281565b6102796104d33660046116ed565b610f57565b6104eb6104e63660046116ed565b610f81565b604080516001600160a01b03938416815292909116602083015201610235565b60006001600160e01b03198216637965db0b60e01b148061053c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156105625750600054600160ff909116105b8061057c5750303b15801561057c575060005460ff166001145b6105e45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610607576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d5561066a610fba565b610675600033611027565b80156106bb576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b600080516020611acc8339815191526106db81611031565b6127108211156106fe57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661072557604051632627b42d60e11b815260040160405180910390fd5b609c5460009061073d906001600160a01b031661103e565b609854609e5460405163c0c53b8b60e01b81526001600160a01b0388811660048301529283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561079957600080fd5b505af11580156107ad573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b9199150606401600060405180830381600087803b15801561080757600080fd5b505af115801561081b573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856110d8565b50505050565b600080516020611aec83398151915261085581611031565b609b5460009061086e906001600160a01b03168461115e565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b1580156108c857600080fd5b505af11580156108dc573d6000803e3d6000fd5b505050506108ea81336111fb565b505050565b60008281526065602052604090206001015461090a81611031565b6108ea83836110d8565b6001600160a01b03811633146109845760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016105db565b61098e8282611353565b5050565b600061099f8383306113ba565b9392505050565b600061053c600080516020611aec83398151915283610c30565b60006109cb81611031565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b600080516020611acc833981519152610a0681611031565b612710821115610a2957604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b038416610a5057604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b91990606401600060405180830381600087803b158015610aa657600080fd5b505af1158015610aba573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856108ef565b600080516020611acc833981519152610aee81611031565b61098e600080516020611aec83398151915283610f32565b6000610b1181611031565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b3f81611031565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b6d81611031565b81609f8481548110610b8157610b81611904565b60009182526020918290200180546001600160a01b0319166001600160a01b0393841617905560408051868152928516918301919091527f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a1505050565b609b5460009061053c906001600160a01b031683306113ba565b6000610c0d81611031565b50609e80546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600061099f609f8481548110610c7357610c73611904565b6000918252602090912001546001600160a01b031683306113ba565b600080516020611acc833981519152610ca781611031565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610cf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d15919061191a565b610d3257604051634f3bd42760e01b815260040160405180910390fd5b6000610d3e868461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610d84948c9491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610d9e57600080fd5b505af1158015610db2573d6000803e3d6000fd5b505050506106bb81866111fb565b600080516020611aec833981519152610dd881611031565b6000610e0b609f8681548110610df057610df0611904565b6000918252602090912001546001600160a01b03168461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610e5194339491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610e6b57600080fd5b505af1158015610e7f573d6000803e3d6000fd5b50505050610e8d81336111fb565b5050505050565b600080610ea081611031565b609f80546001810182556000919091527f0bc14066c33013fe88f66e314e4cf150b0b2d4d6451a1a51dbbd1c27cd11de28810180546001600160a01b0319166001600160a01b0386169081179091556040805183815260208101929092529193507f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a150919050565b600082815260656020526040902060010154610f4d81611031565b6108ea8383611353565b609f8181548110610f6757600080fd5b6000918252602090912001546001600160a01b0316905081565b60978181548110610f9157600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff166110255760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016105db565b565b61098e82826110d8565b61103b8133611416565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b0381166110d35760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b60448201526064016105db565b919050565b6110e28282610c30565b61098e5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561111a3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b03811661053c5760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c656400000000000000000060448201526064016105db565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c906112d19085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b1580156112eb57600080fd5b505af11580156112ff573d6000803e3d6000fd5b50505050609d60008154611312906119e9565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b61135d8282610c30565b1561098e5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6114208282610c30565b61098e5761142d8161146f565b611438836020611481565b604051602001611449929190611a02565b60408051601f198184030181529082905262461bcd60e51b82526105db91600401611a77565b606061053c6001600160a01b03831660145b60606000611490836002611a8a565b61149b906002611aa1565b67ffffffffffffffff8111156114b3576114b36117ab565b6040519080825280601f01601f1916602001820160405280156114dd576020820181803683370190505b509050600360fc1b816000815181106114f8576114f8611904565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061152757611527611904565b60200101906001600160f81b031916908160001a905350600061154b846002611a8a565b611556906001611aa1565b90505b60018111156115ce576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061158a5761158a611904565b1a60f81b8282815181106115a0576115a0611904565b60200101906001600160f81b031916908160001a90535060049490941c936115c781611ab4565b9050611559565b50831561099f5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016105db565b60006020828403121561162f57600080fd5b81356001600160e01b03198116811461099f57600080fd5b80356001600160a01b03811681146110d357600080fd5b600080600080600060a0868803121561167657600080fd5b61167f86611647565b945061168d60208701611647565b935061169b60408701611647565b92506116a960608701611647565b91506116b760808701611647565b90509295509295909350565b600080604083850312156116d657600080fd5b6116df83611647565b946020939093013593505050565b6000602082840312156116ff57600080fd5b5035919050565b6000806040838503121561171957600080fd5b8235915061172960208401611647565b90509250929050565b60006020828403121561174457600080fd5b61099f82611647565b60008060006060848603121561176257600080fd5b61176b84611647565b925061177960208501611647565b9150604084013590509250925092565b6000806040838503121561179c57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126117d257600080fd5b813567ffffffffffffffff808211156117ed576117ed6117ab565b604051601f8301601f19908116603f01168101908282118183101715611815576118156117ab565b8160405283815286602085880101111561182e57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561186457600080fd5b61186d85611647565b935061187b60208601611647565b9250604085013567ffffffffffffffff81111561189757600080fd5b6118a3878288016117c1565b949793965093946060013593505050565b6000806000606084860312156118c957600080fd5b83359250602084013567ffffffffffffffff8111156118e757600080fd5b6118f3868287016117c1565b925050604084013590509250925092565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561192c57600080fd5b8151801515811461099f57600080fd5b60005b8381101561195757818101518382015260200161193f565b50506000910152565b6000815180845261197881602086016020860161193c565b601f01601f19169290920160200192915050565b6001600160a01b038681168252858116602083015284811660408301528316606082015260a0608082018190526000906119c890830184611960565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016119fb576119fb6119d3565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611a3a81601785016020880161193c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611a6b81602884016020880161193c565b01602801949350505050565b60208152600061099f6020830184611960565b808202811582820484141761053c5761053c6119d3565b8082018082111561053c5761053c6119d3565b600081611ac357611ac36119d3565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220bf7faf033458943f1f81d983fa6efeed9fc4cf72c12acec8503359cc4e9c8f6864736f6c63430008130033", + "nonce": "0x4f5", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0x1d5a0535ad40e6afd71b5ffaba7ec76a7c0c26f7585e91f5a2fb1c37df6833a0", + "transactionIndex": "0x1", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0xca9f1", + "gasUsed": "0xbaffc", + "contractAddress": "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "logs": [ + { + "address": "0xa4F3f987beBF7786fdc7147856Be776fbd26029B", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x1d5a0535ad40e6afd71b5ffaba7ec76a7c0c26f7585e91f5a2fb1c37df6833a0", + "transactionIndex": "0x1", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x169069", + "gasUsed": "0x9e678", + "contractAddress": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "logs": [ + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", + "0x000000000000000000000000a4f3f987bebf7786fdc7147856be776fbd26029b" + ], + "data": "0x", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x1", + "removed": false + }, + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd", + "0x000000000000000000000000d71256ec24925873ce9e9f085f89864ca05970bd" + ], + "data": "0x", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x2", + "removed": false + }, + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x3", + "removed": false + }, + { + "address": "0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee", + "topics": [ + "0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f" + ], + "data": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000305d807d22070dfff295f5575ecd354f72c2eb76", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x631cfb0fe28ec9cb9d7febfe1375fe46dd699e7000b9e15701e5f96d1001727d", + "transactionIndex": "0x2", + "logIndex": "0x4", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000004000000000000000200000000400000000000000000000000000000020400000000000000000000000000000000000000000000000000000000000000000400000000000000000000004002020000000000000000000000000000000000000000020000000000000000000800000000800000000000000000000000000000002000000000000000000040000000000000000080000000000000800000000000000000000000000000000400000000000000000000001000000000000000000020000000000000000000040000000000000400000100000000000020000000000000000000000000000400000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0xa247a9ee6a1e0eb7f2695a60e052a8a098a454f0b9648c5e30609d6314766039", + "transactionIndex": "0x3", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x38ee9f", + "gasUsed": "0x225e36", + "contractAddress": "0x67eE62b7C507960Ea2d0e900F391eB1856723a88", + "logs": [ + { + "address": "0x67eE62b7C507960Ea2d0e900F391eB1856723a88", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0xa247a9ee6a1e0eb7f2695a60e052a8a098a454f0b9648c5e30609d6314766039", + "transactionIndex": "0x3", + "logIndex": "0x5", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000080000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000100000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0x0b2d706956e4a636da4bd672e0784bcd7645e4c8b9d6d3eac61581d7749558b9", + "transactionIndex": "0x4", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x67f0a5", + "gasUsed": "0x2f0206", + "contractAddress": "0xa765c364f57598f4175Cd482694a2934fD408CF9", + "logs": [ + { + "address": "0xa765c364f57598f4175Cd482694a2934fD408CF9", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0x0b2d706956e4a636da4bd672e0784bcd7645e4c8b9d6d3eac61581d7749558b9", + "transactionIndex": "0x4", + "logIndex": "0x6", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000020000080000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0xd2dd252aa53fa8d07f148b36ad079374acf52e2f2d5a75850d30edf1e22399ae", + "transactionIndex": "0x5", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x957908", + "gasUsed": "0x2d8863", + "contractAddress": "0x12905691B20F5045EC76cC0be411199051206230", + "logs": [ + { + "address": "0x12905691B20F5045EC76cC0be411199051206230", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xd534329bc3f9687e6ee9ad6bf04c5dcae92496807a9cdf5a34df303971c8a4ad", + "blockNumber": "0xd357bc", + "transactionHash": "0xd2dd252aa53fa8d07f148b36ad079374acf52e2f2d5a75850d30edf1e22399ae", + "transactionIndex": "0x5", + "logIndex": "0x7", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000002000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000040000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05efe" + }, + { + "transactionHash": "0x2644ab5f1ef6fb1b5f01818885f0ee539409db27dad3686f64a81e351fed16b5", + "transactionIndex": "0x1", + "blockHash": "0xc5486837e8abe7bf303bf7e9dbfebaf6ac8b99619b862c7c522bf1cd9a876f7b", + "blockNumber": "0xd357bd", + "from": "0xD71256eC24925873cE9E9F085f89864Ca05970bD", + "to": null, + "cumulativeGasUsed": "0x18ecdb", + "gasUsed": "0x1835b2", + "contractAddress": "0x7A700EeF6Abf340DF822202730ce1CcC807B575e", + "logs": [ + { + "address": "0x7A700EeF6Abf340DF822202730ce1CcC807B575e", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xc5486837e8abe7bf303bf7e9dbfebaf6ac8b99619b862c7c522bf1cd9a876f7b", + "blockNumber": "0xd357bd", + "transactionHash": "0x2644ab5f1ef6fb1b5f01818885f0ee539409db27dad3686f64a81e351fed16b5", + "transactionIndex": "0x1", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05f00" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1702894749, + "chain": 84531, + "multi": false, + "commit": "fb90636" +} \ No newline at end of file diff --git a/deployment/84531/ABKYCModule/address b/deployment/84531/ABKYCModule/address index e69de29..27c7892 100644 --- a/deployment/84531/ABKYCModule/address +++ b/deployment/84531/ABKYCModule/address @@ -0,0 +1 @@ +0xb4aC02eE9302A14B2D7acDe098f8AEA72216aAee \ No newline at end of file diff --git a/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894726.json b/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894726.json new file mode 100644 index 0000000..eafcf5e --- /dev/null +++ b/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894726.json @@ -0,0 +1,22 @@ +{ + "transactions": [ + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894733.json b/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894733.json new file mode 100644 index 0000000..eafcf5e --- /dev/null +++ b/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894733.json @@ -0,0 +1,22 @@ +{ + "transactions": [ + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894749.json b/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894749.json new file mode 100644 index 0000000..eafcf5e --- /dev/null +++ b/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-1702894749.json @@ -0,0 +1,22 @@ +{ + "transactions": [ + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-latest.json b/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-latest.json new file mode 100644 index 0000000..eafcf5e --- /dev/null +++ b/forge-cache/deploy-kyc-upgrade.s.sol/84531/run-latest.json @@ -0,0 +1,22 @@ +{ + "transactions": [ + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + }, + { + "rpc": "https://goerli.base.org" + } + ] +} \ No newline at end of file diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 3f9f8ba..d0ae584 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -1 +1 @@ -{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1680596959844,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1686130554341,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1680596959845,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1680596959845,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1680596959845,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1680596960583,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685431596392,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1680596959867,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685431596392,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685431596392,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685431596392,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1680596959868,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1680596959868,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1680596959868,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1680596959868,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1680596959868,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1680596959868,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1701338065645,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1680596959868,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685431596392,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1680596959868,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685431596393,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1680596959869,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685431596444,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1680596960619,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685431596455,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685431596455,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1680596960628,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685431596455,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685431596455,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596455,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1686297155172,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685431596456,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1680596960629,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1680596960629,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1680596960630,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1680596960630,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1680596960631,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685431596458,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685431596458,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1680596960632,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1680596960633,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685431596459,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1680596960634,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1680596960634,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685431596460,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1680596960634,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685431596460,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685431596461,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685431596461,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685431596461,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685431596462,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1680596960636,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685431596462,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1680596962383,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596555,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1686313924066,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1680596962399,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685431596555,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1680596962400,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685431596559,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1680596962405,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685431596560,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685431596561,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685431596647,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685431596647,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1680596963987,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685431596647,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685431596648,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685431596648,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1680596963987,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1680596963987,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1680596963987,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1680596963988,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1680596963989,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1680596963989,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685431596649,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1680596963992,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1680596963992,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1680596963992,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1693465366216,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870138,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1699523979381,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1699523979381,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1701101671212,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1695374870137,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870137,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1699523979380,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1702370649096,"contentHash":"559c6c819096ca166379a327a22cec6b","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1701101671211,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1700049426046,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649096,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649097,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649097,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649097,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702370649098,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649098,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702370649098,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649098,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1693465366217,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1699523979382,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1695374870139,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1702384457164,"contentHash":"ff3cf727aba778ed6bd91876589bce0d","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1702370649100,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1702370649100,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1702384397802,"contentHash":"9afaf557e827e746bf4e6e90c88fbafc","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1702370649101,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1702370649102,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1702370649103,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1702370649103,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1702370649103,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1702370649104,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"01daae19991c3d298a84da11cea6a548","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1702370649105,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1702370649105,"contentHash":"4d08d742c574856408bc4714443bce67","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1702370649106,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1702370649106,"contentHash":"fd6c89ab4678e9b71919fa3b17964721","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1695374870143,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1693465366219,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1693465366220,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1693465366220,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1695374870143,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1693465366220,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1695374870144,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1702370649107,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1702370649107,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1702370649108,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1702377451281,"contentHash":"bee41342f6760fa179590adf1e84d1e2","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1702370649109,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1702370649110,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1702370649110,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1702370649111,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1702370649112,"contentHash":"c9efb686599e96d0f106725bb622c2b2","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1699523979388,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file +{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1680596959844,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1686130554341,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1680596959845,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1680596959845,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1680596959845,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1680596960583,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685431596392,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1680596959867,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685431596392,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685431596392,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685431596392,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1680596959868,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1680596959868,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1680596959868,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1680596959868,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1680596959868,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1680596959868,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1701338065645,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1680596959868,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685431596392,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1680596959868,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685431596393,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1680596959869,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685431596444,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1680596960619,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685431596455,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685431596455,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1680596960628,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685431596455,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685431596455,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596455,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1686297155172,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685431596456,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1680596960629,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1680596960629,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1680596960630,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1680596960630,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1680596960631,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685431596458,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685431596458,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1680596960632,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1680596960633,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685431596459,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1680596960634,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1680596960634,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685431596460,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1680596960634,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685431596460,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685431596461,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685431596461,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685431596461,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685431596462,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1680596960636,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685431596462,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1680596962383,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596555,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1686313924066,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1680596962399,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685431596555,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1680596962400,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685431596559,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1680596962405,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685431596560,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685431596561,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685431596647,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685431596647,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1680596963987,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685431596647,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685431596648,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685431596648,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1680596963987,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1680596963987,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1680596963987,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1680596963988,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1680596963989,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1680596963989,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685431596649,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1680596963992,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1680596963992,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1680596963992,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1702891363599,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870138,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1702891363599,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1702891363600,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1702891363600,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1702891363594,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870137,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1702891363595,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-erc20mint.s.sol":{"lastModificationDate":1702892940048,"contentHash":"4989901eb9093ae500afcafe3e7a005c","sourceName":"script/base-goerli/deploy-kyc-erc20mint.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-erc20mint.s.sol/DeployKYCERC20.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1702894399536,"contentHash":"100e33853613334c2e176a372f68c7bf","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1702891363596,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1702891363597,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702891363597,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649097,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702891363598,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649097,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702891363600,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649098,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702891363601,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649098,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1693465366217,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1702891363601,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1695374870139,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1702384457164,"contentHash":"ff3cf727aba778ed6bd91876589bce0d","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1702370649100,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1702370649100,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1702384397802,"contentHash":"9afaf557e827e746bf4e6e90c88fbafc","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1702370649101,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1702370649102,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1702370649103,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1702370649103,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1702370649103,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1702370649104,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"01daae19991c3d298a84da11cea6a548","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1702370649105,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1702893194261,"contentHash":"65412e9bc6f0764bc78b283d2e1af36c","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1702370649106,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1702893241256,"contentHash":"4fbc1efff48937c20859fb673ba4ff0a","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1695374870143,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1693465366219,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1693465366220,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1693465366220,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1695374870143,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1693465366220,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1695374870144,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1702370649107,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1702370649107,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1702370649108,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1702891363610,"contentHash":"bee41342f6760fa179590adf1e84d1e2","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1702891363611,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1702891363611,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1702891363612,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1702891363612,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1702370649112,"contentHash":"c9efb686599e96d0f106725bb622c2b2","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1702891363613,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file From 305ca02fd0e2bb2331fdd4db54e2fdc5789d8809 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Mon, 18 Dec 2023 11:35:38 +0100 Subject: [PATCH 69/74] reoder instruction --- script/base-goerli/deploy-kyc-upgrade.s.sol | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/script/base-goerli/deploy-kyc-upgrade.s.sol b/script/base-goerli/deploy-kyc-upgrade.s.sol index 01b166e..c2b8e83 100644 --- a/script/base-goerli/deploy-kyc-upgrade.s.sol +++ b/script/base-goerli/deploy-kyc-upgrade.s.sol @@ -68,15 +68,14 @@ contract DeployKYCUpgrade is Script { // proxyAdmin.upgrade(TransparentUpgradeableProxy(anotherCloneFactoryProxy), address(factoryImpl)); // // Set new implementation contracts addresses in AnotherCloneFactory + // AnotherCloneFactory(anotherCloneFactoryProxy).setABKYCModule(address(abKycModuleProxy)); + // AnotherCloneFactory(anotherCloneFactoryProxy).approveERC721Implementation(address(erc721LimitedEditionImpl)); // AnotherCloneFactory(anotherCloneFactoryProxy).approveERC721Implementation(address(erc721OpenEditionImpl)); // AnotherCloneFactory(anotherCloneFactoryProxy).setABRoyaltyImplementation(address(abRoyalty)); - // // Set new implementation contracts addresses in AnotherCloneFactory - // AnotherCloneFactory(anotherCloneFactoryProxy).setABKYCModule(address(abKycModuleProxy)); - vm.stopBroadcast(); } From 886683021231842c377aec22cbea2e94fa63d305 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 9 Jan 2024 11:20:12 +0100 Subject: [PATCH 70/74] deploy script for upgrade on mainnet --- script/base/deploy-v1_2.s.sol | 84 +++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 script/base/deploy-v1_2.s.sol diff --git a/script/base/deploy-v1_2.s.sol b/script/base/deploy-v1_2.s.sol new file mode 100644 index 0000000..d3ef04d --- /dev/null +++ b/script/base/deploy-v1_2.s.sol @@ -0,0 +1,84 @@ +/* +forge script script/base/deploy-1_2.s.sol --rpc-url base --sig "run(bool)" true +forge script script/base/deploy-1_2.s.sol --rpc-url base --sig "run(bool)" false --broadcast --verify +*/ + +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.18; + +import "forge-std/Script.sol"; + +import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; +import {ProxyAdmin} from "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol"; + +import {ABKYCModule} from "src/utils/ABKYCModule.sol"; +import {ABRoyalty} from "src/royalty/ABRoyalty.sol"; +import {ERC721ABOE} from "src/token/ERC721/ERC721ABOE.sol"; +import {ERC721ABLE} from "src/token/ERC721/ERC721ABLE.sol"; +import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; + +contract DeployKYCUpgrade is Script { + string public constant KYC_MODULE_PATH = "deployment/8453/ABKYCModule/address"; + string public constant PROXY_ADMIN_PATH = "deployment/8453/ProxyAdmin/address"; + + ABRoyalty public abRoyalty; + ERC721ABLE public erc721LimitedEditionImpl; + ERC721ABOE public erc721OpenEditionImpl; + AnotherCloneFactory public factoryImpl; + + ProxyAdmin public proxyAdmin; + TransparentUpgradeableProxy public abKycModuleProxy; + address payable private anotherCloneFactoryProxy = payable(0x137d7d27af9B4d7b467Ac008AFdcDb8C9Ac4ddd9); + + function run(bool isDryRun) external { + // Account to deploy from + uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY"); + + address admin = vm.addr(deployerPrivateKey); + + // Start broadcasting transactions + vm.startBroadcast(deployerPrivateKey); + + // Check if a Proxy Admin has already been deployed + try vm.readFile(PROXY_ADMIN_PATH) returns (string memory proxyAdminAddr) { + proxyAdmin = ProxyAdmin(vm.parseAddress(proxyAdminAddr)); + } catch { + proxyAdmin = new ProxyAdmin(); + if (!isDryRun) { + _writeAddressToFile(address(proxyAdmin), PROXY_ADMIN_PATH); + } + } + + // Deploy ABVerifier + abKycModuleProxy = new TransparentUpgradeableProxy( + address(new ABKYCModule()), + address(proxyAdmin), + abi.encodeWithSelector(ABKYCModule.initialize.selector, admin) + ); + if (!isDryRun) { + _writeAddressToFile(address(abKycModuleProxy), KYC_MODULE_PATH); + } + + // Deploy Implementation Contracts + abRoyalty = new ABRoyalty(); + erc721LimitedEditionImpl = new ERC721ABLE(); + erc721OpenEditionImpl = new ERC721ABOE(); + factoryImpl = new AnotherCloneFactory(); + + vm.stopBroadcast(); + } + + function _writeAddressToFile(address _addr, string memory _path) internal { + vm.writeFile(_path, vm.toString(_addr)); + } +} + +/* +TODO Manually (with multisig): + +1 - Upgrade AnotherCloneFactory Proxy with new implementation +2 - Set ABKYCModule contracts address in AnotherCloneFactory +3 - approve ERC721 Open Edition implementation +4 - approve ERC721 Limited Edition implementation +5 - set new royalty implementation +*/ From 386f247d43c646b140fdbd3394fd247559a24892 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 9 Jan 2024 11:20:26 +0100 Subject: [PATCH 71/74] update base etherscan config --- foundry.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/foundry.toml b/foundry.toml index f5f2839..4d49b1e 100644 --- a/foundry.toml +++ b/foundry.toml @@ -19,7 +19,7 @@ base = "${BASE_RPC}" [etherscan] optimism-goerli = { key = "${OPTIMISM_ETHERSCAN_API_KEY}", chain = 420 } base-goerli = { key = "${ETHERSCAN_API_KEY}", chain = 84531, url = "https://api-goerli.basescan.org/api" } -base = { key = "${BASE_ETHERSCAN_API_KEY}", chain = 8453, url = "https://api.basescan.org/api" } +base = { key = "${BASE_ETHERSCAN_API_KEY}", chain = 8453 } [fuzz] seed = "0x3130" From 9d351c53b3fdba3e51f4e236cd781565d472d13c Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Tue, 9 Jan 2024 11:20:40 +0100 Subject: [PATCH 72/74] address placeholder for ABKYCModule on Base --- deployment/8453/ABKYCModule/address | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 deployment/8453/ABKYCModule/address diff --git a/deployment/8453/ABKYCModule/address b/deployment/8453/ABKYCModule/address new file mode 100644 index 0000000..e69de29 From b1423ff7ba7b2ed60dd4cd2d090115c5c4a8e349 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Wed, 10 Jan 2024 15:52:18 +0100 Subject: [PATCH 73/74] upgrade executed --- .../8453/run-1704893536.json | 137 +++++++ .../8453/run-1704893543.json | 354 ++++++++++++++++++ .../deploy-v1_2.s.sol/8453/run-latest.json | 354 ++++++++++++++++++ deployment/8453/ABKYCModule/address | 1 + .../8453/dry-run/run-1704893245.json | 22 ++ .../8453/dry-run/run-1704893447.json | 22 ++ .../8453/dry-run/run-latest.json | 22 ++ .../8453/run-1704893536.json | 22 ++ .../8453/run-1704893543.json | 22 ++ .../deploy-v1_2.s.sol/8453/run-latest.json | 22 ++ forge-cache/solidity-files-cache.json | 2 +- script/base/deploy-v1_2.s.sol | 12 +- 12 files changed, 985 insertions(+), 7 deletions(-) create mode 100644 broadcast/deploy-v1_2.s.sol/8453/run-1704893536.json create mode 100644 broadcast/deploy-v1_2.s.sol/8453/run-1704893543.json create mode 100644 broadcast/deploy-v1_2.s.sol/8453/run-latest.json create mode 100644 forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-1704893245.json create mode 100644 forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-1704893447.json create mode 100644 forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-latest.json create mode 100644 forge-cache/deploy-v1_2.s.sol/8453/run-1704893536.json create mode 100644 forge-cache/deploy-v1_2.s.sol/8453/run-1704893543.json create mode 100644 forge-cache/deploy-v1_2.s.sol/8453/run-latest.json diff --git a/broadcast/deploy-v1_2.s.sol/8453/run-1704893536.json b/broadcast/deploy-v1_2.s.sol/8453/run-1704893536.json new file mode 100644 index 0000000..4a3987e --- /dev/null +++ b/broadcast/deploy-v1_2.s.sol/8453/run-1704893536.json @@ -0,0 +1,137 @@ +{ + "transactions": [ + { + "hash": "0x27a3a89a8803b9be85659957a47d161c0cd459a98524f62934ffd06bab1abdb6", + "transactionType": "CREATE", + "contractName": "ABKYCModule", + "contractAddress": "0xdC8B3030E54e88F08Ca01B842448fdcE9b511CdB", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0xf307e", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b610c68806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063627cdcb9116100a2578063ccac2c1311610071578063ccac2c131461022b578063cfc5a0c01461023e578063d547741f14610265578063e83931af14610278578063f2c526bc1461016357600080fd5b8063627cdcb9146101f557806391d14854146101fd578063a217fddf14610210578063c4d66de81461021857600080fd5b80632f2ff15d116100de5780632f2ff15d146101a957806336568abe146101bc578063437a0de9146101cf5780634a96535b146101e257600080fd5b806301ffc9a7146101105780631180b553146101385780631723576414610163578063248a9ca314610178575b600080fd5b61012361011e366004610977565b610289565b60405190151581526020015b60405180910390f35b61014b6101463660046109bd565b6102c0565b6040516001600160a01b03909116815260200161012f565b6101766101713660046109d8565b505050565b005b61019b610186366004610a5b565b60009081526065602052604090206001015490565b60405190815260200161012f565b6101766101b7366004610a74565b6102cb565b6101766101ca366004610a74565b6102f0565b60975461014b906001600160a01b031681565b6101766101f03660046109bd565b610373565b6101766103a1565b61012361020b366004610a74565b6103c2565b61019b600081565b6101766102263660046109bd565b6103ed565b610176610239366004610aa0565b61054b565b61019b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b610176610273366004610a74565b6105a4565b6101766102863660046109bd565b50565b60006001600160e01b03198216637965db0b60e01b14806102ba57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006102ba826105c9565b6000828152606560205260409020600101546102e6816105fb565b6101718383610605565b6001600160a01b03811633146103655760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61036f828261068b565b5050565b600061037e816105fb565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006103ac816105fb565b6099600081546103bb90610ae0565b9091555050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600054610100900460ff161580801561040d5750600054600160ff909116105b806104275750303b158015610427575060005460ff166001145b61048a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161035c565b6000805460ff1916600117905580156104ad576000805461ff0019166101001790555b6001600160a01b0382166104d457604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b0384161790556104f76106f2565b61050260003361075f565b801561036f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e610575816105fb565b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b6000828152606560205260409020600101546105bf816105fb565b610171838361068b565b6097546001600160a01b03828116600090815260986020526040902054918116911680156105f5578091505b50919050565b6102868133610769565b61060f82826103c2565b61036f5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556106473390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61069582826103c2565b1561036f5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600054610100900460ff1661075d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161035c565b565b61036f8282610605565b61077382826103c2565b61036f57610780816107c2565b61078b8360206107d4565b60405160200161079c929190610b1d565b60408051601f198184030181529082905262461bcd60e51b825261035c91600401610b92565b60606102ba6001600160a01b03831660145b606060006107e3836002610bc5565b6107ee906002610bdc565b67ffffffffffffffff81111561080657610806610bef565b6040519080825280601f01601f191660200182016040528015610830576020820181803683370190505b509050600360fc1b8160008151811061084b5761084b610c05565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061087a5761087a610c05565b60200101906001600160f81b031916908160001a905350600061089e846002610bc5565b6108a9906001610bdc565b90505b6001811115610921576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106108dd576108dd610c05565b1a60f81b8282815181106108f3576108f3610c05565b60200101906001600160f81b031916908160001a90535060049490941c9361091a81610c1b565b90506108ac565b5083156109705760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161035c565b9392505050565b60006020828403121561098957600080fd5b81356001600160e01b03198116811461097057600080fd5b80356001600160a01b03811681146109b857600080fd5b919050565b6000602082840312156109cf57600080fd5b610970826109a1565b6000806000604084860312156109ed57600080fd5b6109f6846109a1565b9250602084013567ffffffffffffffff80821115610a1357600080fd5b818601915086601f830112610a2757600080fd5b813581811115610a3657600080fd5b876020828501011115610a4857600080fd5b6020830194508093505050509250925092565b600060208284031215610a6d57600080fd5b5035919050565b60008060408385031215610a8757600080fd5b82359150610a97602084016109a1565b90509250929050565b60008060408385031215610ab357600080fd5b610abc836109a1565b9150610a97602084016109a1565b634e487b7160e01b600052601160045260246000fd5b600060018201610af257610af2610aca565b5060010190565b60005b83811015610b14578181015183820152602001610afc565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351610b55816017850160208801610af9565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351610b86816028840160208801610af9565b01602801949350505050565b6020815260008251806020840152610bb1816040850160208701610af9565b601f01601f19169190910160400192915050565b80820281158282048414176102ba576102ba610aca565b808201808211156102ba576102ba610aca565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081610c2a57610c2a610aca565b50600019019056fea26469706673582212208d91efe3e0bad5f5e8fd18795d05e2647d4c6c39a1fa25642cadbe390e30f32a64736f6c63430008130033", + "nonce": "0x77", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "function": null, + "arguments": [ + "0xdC8B3030E54e88F08Ca01B842448fdcE9b511CdB", + "0x3934000d33f8B4df78BA0D3cDfa61e620580822c", + "0xc4d66de80000000000000000000000002bbc44d4449e947d3612c2b16147d9206eaed990" + ], + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0xcdd8f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122027bb32bdabd86208be11b9ccb5c5f1a473bdb5213dea3f6d98324022f2029b1464736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000dc8b3030e54e88f08ca01b842448fdce9b511cdb0000000000000000000000003934000d33f8b4df78ba0d3cdfa61e620580822c00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de80000000000000000000000002bbc44d4449e947d3612c2b16147d9206eaed99000000000000000000000000000000000000000000000000000000000", + "nonce": "0x78", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x7b2fed735f4906d188df5cdece043a45ef7071f49df64b204b3c450f07c6aae1", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0x65B7B3f5c5b01f06D3D5545d72e6962AD664F999", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x2caa67", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61274b80620000f46000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806378c5195e11610104578063b08805a5116100a2578063d518b7ff11610071578063d518b7ff14610470578063d547741f14610483578063df3d053b14610496578063f8372320146104a957600080fd5b8063b08805a5146103f8578063b81155b51461040b578063c0c53b8b14610448578063cfc5a0c01461045b57600080fd5b806391d14854116100de57806391d14854146103a15780639ab29f2b146103b4578063a217fddf146103c7578063a626f573146103cf57600080fd5b806378c5195e146103685780638c72c54e1461037b5780638fd1101c1461038e57600080fd5b806336568abe1161017c5780634e4345921161014b5780634e434592146103155780634eb6b7f6146103285780636ce10ab61461033b578063754b377c1461034e57600080fd5b806336568abe146102c757806342f1e879146102da578063482a61ff146102ef5780634acdd3581461030257600080fd5b80631c44eb4f116101b85780631c44eb4f1461022f5780631d3b405a14610242578063248a9ca3146102835780632f2ff15d146102b457600080fd5b806301ffc9a7146101df57806319c0fab9146102075780631bfb1bb81461021c575b600080fd5b6101f26101ed366004611c44565b6104b2565b60405190151581526020015b60405180910390f35b61021a610215366004611cb9565b6104e9565b005b61021a61022a366004611d52565b610603565b61021a61023d366004611e0c565b6106b5565b61026b610250366004611e77565b6099602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b6102a6610291366004611e77565b60009081526065602052604090206001015490565b6040519081526020016101fe565b61021a6102c2366004611ea5565b610706565b61021a6102d5366004611ea5565b610730565b6102a66000805160206126f683398151915281565b61021a6102fd366004611ed5565b6107b3565b61021a610310366004611f20565b6107c8565b61021a610323366004611f6f565b6107fc565b60985461026b906001600160a01b031681565b61021a610349366004611fe2565b610867565b610356600181565b60405160ff90911681526020016101fe565b6102a6610376366004611ea5565b6108f9565b60975461026b906001600160a01b031681565b61021a61039c366004612023565b610927565b6101f26103af366004611ea5565b61096b565b6102a66103c2366004611ea5565b610996565b6102a6600081565b61026b6103dd366004611e77565b609a602052600090815260409020546001600160a01b031681565b61021a610406366004612069565b6109cd565b61041e610419366004611e77565b6109ef565b604080516001600160801b03948516815292841660208401529216918101919091526060016101fe565b61021a61045636600461208b565b610a24565b6102a66000805160206126d683398151915281565b61021a61047e3660046120d6565b610b96565b61021a610491366004611ea5565b610c70565b61021a6104a4366004612159565b610c95565b6102a66103e881565b60006001600160e01b03198216637965db0b60e01b14806104e357506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000805160206126d683398151915261050181610d39565b83868380831461052457604051632627b42d60e11b815260040160405180910390fd5b60005b838110156105f65761058289898381811061054457610544612187565b9050602002016020810190610559919061219d565b88888481811061056b5761056b612187565b905060200281019061057d91906121ba565b610d46565b60005b838110156105e5576105d58c8c838181106105a2576105a2612187565b905060200201358b8b858181106105bb576105bb612187565b90506020020160208101906105d0919061219d565b610daf565b6105de81612216565b9050610585565b506105ef81612216565b9050610527565b5050505050505050505050565b6000805160206126d683398151915261061b81610d39565b838280821461063d57604051632627b42d60e11b815260040160405180910390fd5b60005b828110156106aa5761068488888381811061065d5761065d612187565b9050602002016020810190610672919061219d565b87878481811061056b5761056b612187565b61069a898989848181106105bb576105bb612187565b6106a381612216565b9050610640565b505050505050505050565b6106c0338383610d46565b8260005b818110156106fe576106ee8686838181106106e1576106e1612187565b9050602002013533610daf565b6106f781612216565b90506106c4565b505050505050565b60008281526065602052604090206001015461072181610d39565b61072b8383610dd3565b505050565b6001600160a01b03811633146107a55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107af8282610e59565b5050565b6107be338383610d46565b61072b8333610daf565b6000805160206126d68339815191526107e081610d39565b6107eb848484610d46565b6107f58585610daf565b5050505050565b6000805160206126d683398151915261081481610d39565b61081f848484610d46565b8460005b8181101561085d5761084d88888381811061084057610840612187565b9050602002013587610daf565b61085681612216565b9050610823565b5050505050505050565b6000805160206126f683398151915261087f81610d39565b60006108946001600160a01b03851684610ec0565b9050806108b457604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260996020908152604080832080546001600160a01b039687166001600160a01b031991821617909155609a9092529091208054929093169116179055565b6000828152609a602052604081205461091d906001600160a01b0316308585610fe5565b9695505050505050565b6000805160206126f683398151915261093f81610d39565b61095585846109506103e88661222f565b611094565b6107f584846109666103e88661222f565b611145565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000828152609a60205260408120546109ba906001600160a01b0316308585610fe5565b506001600160801b031695945050505050565b6000805160206126f68339815191526109e581610d39565b61072b838361119b565b6000818152609a602052604081205481908190610a16906001600160a01b03163086611225565b919790965090945092505050565b600054610100900460ff1615808015610a445750600054600160ff909116105b80610a5e5750303b158015610a5e575060005460ff166001145b610ac15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161079c565b6000805460ff191660011790558015610ae4576000805461ff0019166101001790555b610aec6112cb565b610af7600085610dd3565b610b02600033610e59565b610b1a6000805160206126f683398151915284610dd3565b609880546001600160a01b038085166001600160a01b03199283161790925560978054928716929091169190911790558015610b90576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000805160206126f6833981519152610bae81610d39565b83828114610bcf57604051632627b42d60e11b815260040160405180910390fd5b60005b818110156106aa57610c1d89888884818110610bf057610bf0612187565b905060200201356103e8888886818110610c0c57610c0c612187565b90506020020135610950919061222f565b610c6088888884818110610c3357610c33612187565b905060200201356103e8888886818110610c4f57610c4f612187565b90506020020135610966919061222f565b610c6981612216565b9050610bd2565b600082815260656020526040902060010154610c8b81610d39565b61072b8383610e59565b6000610ca081610d39565b81610d2f576000848152609a6020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610d09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2d9190612246565b505b610b90848461119b565b610d438133611338565b50565b6098546040516305c8d5d960e21b81526001600160a01b0390911690631723576490610d7a90869086908690600401612263565b60006040518083038186803b158015610d9257600080fd5b505afa158015610da6573d6000803e3d6000fd5b50505050505050565b6000828152609a602052604090205461072b906001600160a01b0316308484611391565b610ddd828261096b565b6107af5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610e153390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610e63828261096b565b156107af5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610ece856114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610f0c57610f0c6122a3565b6040519080825280601f01601f191660200182016040528015610f36576020820181803683370190505b50604051602401610f4993929190612309565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610f9293925090600401612342565b6000604051808303816000875af1158015610fb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd99190810190612389565b50600195945050505050565b6000806000806000610ff689611683565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa15801561105d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110819190612451565b929c919b50995090975095505050505050565b6001600160a01b0383166110a757505050565b6000828152609a60205260408120546110cb906001600160a01b0316308587610fe5565b506001600160801b031692505050600082826110e791906124a1565b11611116576000838152609a6020526040902054611110906001600160a01b03163085876117e8565b50610b90565b6107f5838561112585856124a1565b6000878152609a60205260409020546001600160a01b0316929190611836565b6001600160a01b03831661115857505050565b6000828152609a602052604081205461117c906001600160a01b0316308587610fe5565b506001600160801b0316925050506107f58385848461112591906124b4565b6000828152609a60205260408120546111bf906001600160a01b03163085856118c3565b506000848152609a60205260409020549091506111e6906001600160a01b03168483611968565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910160405180910390a1505050565b600080600080600061123688611683565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b991906124c7565b94509450945094505093509350935093565b600054610100900460ff166113365760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161079c565b565b611342828261096b565b6107af5761134f81611a90565b61135a836020611aa2565b60405160200161136b92919061251d565b60408051601f198184030181529082905262461bcd60e51b825261079c91600401612592565b600080600061139f876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b038111156113df576113df6122a3565b6040519080825280601f01601f191660200182016040528015611409576020820181803683370190505b5060405160240161141e9594939291906125a5565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261146793925090600401612342565b6000604051808303816000875af1158015611486573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114ae9190810190612389565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661158157826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa15801561155a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061157e91906125e5565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156115e5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061160991906125e5565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b03821661166857611668612602565b6001600160a01b03811661167e5761167e612602565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661174857826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611721573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061174591906125e5565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156117ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d091906125e5565b90506001600160a01b03821661166857611668612602565b60008060006117f6876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b038111156113df576113df6122a3565b6000806000611844876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b03811115611884576118846122a3565b6040519080825280601f01601f1916602001820160405280156118ae576020820181803683370190505b5060405160240161141e959493929190612618565b60008060006118d187611683565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa158015611936573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195a919061265f565b925092505094509492505050565b6000806000611976866114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b038111156119b5576119b56122a3565b6040519080825280601f01601f1916602001820160405280156119df576020820181803683370190505b506040516024016119f3949392919061268b565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252611a3c93925090600401612342565b6000604051808303816000875af1158015611a5b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a839190810190612389565b5060019695505050505050565b60606104e36001600160a01b03831660145b60606000611ab183600261222f565b611abc9060026124b4565b6001600160401b03811115611ad357611ad36122a3565b6040519080825280601f01601f191660200182016040528015611afd576020820181803683370190505b509050600360fc1b81600081518110611b1857611b18612187565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611b4757611b47612187565b60200101906001600160f81b031916908160001a9053506000611b6b84600261222f565b611b769060016124b4565b90505b6001811115611bee576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611baa57611baa612187565b1a60f81b828281518110611bc057611bc0612187565b60200101906001600160f81b031916908160001a90535060049490941c93611be7816126be565b9050611b79565b508315611c3d5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161079c565b9392505050565b600060208284031215611c5657600080fd5b81356001600160e01b031981168114611c3d57600080fd5b60008083601f840112611c8057600080fd5b5081356001600160401b03811115611c9757600080fd5b6020830191508360208260051b8501011115611cb257600080fd5b9250929050565b60008060008060008060608789031215611cd257600080fd5b86356001600160401b0380821115611ce957600080fd5b611cf58a838b01611c6e565b90985096506020890135915080821115611d0e57600080fd5b611d1a8a838b01611c6e565b90965094506040890135915080821115611d3357600080fd5b50611d4089828a01611c6e565b979a9699509497509295939492505050565b600080600080600060608688031215611d6a57600080fd5b8535945060208601356001600160401b0380821115611d8857600080fd5b611d9489838a01611c6e565b90965094506040880135915080821115611dad57600080fd5b50611dba88828901611c6e565b969995985093965092949392505050565b60008083601f840112611ddd57600080fd5b5081356001600160401b03811115611df457600080fd5b602083019150836020828501011115611cb257600080fd5b60008060008060408587031215611e2257600080fd5b84356001600160401b0380821115611e3957600080fd5b611e4588838901611c6e565b90965094506020870135915080821115611e5e57600080fd5b50611e6b87828801611dcb565b95989497509550505050565b600060208284031215611e8957600080fd5b5035919050565b6001600160a01b0381168114610d4357600080fd5b60008060408385031215611eb857600080fd5b823591506020830135611eca81611e90565b809150509250929050565b600080600060408486031215611eea57600080fd5b8335925060208401356001600160401b03811115611f0757600080fd5b611f1386828701611dcb565b9497909650939450505050565b60008060008060608587031215611f3657600080fd5b843593506020850135611f4881611e90565b925060408501356001600160401b03811115611f6357600080fd5b611e6b87828801611dcb565b600080600080600060608688031215611f8757600080fd5b85356001600160401b0380821115611f9e57600080fd5b611faa89838a01611c6e565b909750955060208801359150611fbf82611e90565b90935060408701359080821115611fd557600080fd5b50611dba88828901611dcb565b600080600060608486031215611ff757600080fd5b833561200281611e90565b9250602084013561201281611e90565b929592945050506040919091013590565b6000806000806080858703121561203957600080fd5b843561204481611e90565b9350602085013561205481611e90565b93969395505050506040820135916060013590565b6000806040838503121561207c57600080fd5b50508035926020909101359150565b6000806000606084860312156120a057600080fd5b83356120ab81611e90565b925060208401356120bb81611e90565b915060408401356120cb81611e90565b809150509250925092565b600080600080600080608087890312156120ef57600080fd5b86356120fa81611e90565b9550602087013561210a81611e90565b945060408701356001600160401b038082111561212657600080fd5b6121328a838b01611c6e565b90965094506060890135915080821115611d3357600080fd5b8015158114610d4357600080fd5b60008060006060848603121561216e57600080fd5b833592506020840135915060408401356120cb8161214b565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156121af57600080fd5b8135611c3d81611e90565b6000808335601e198436030181126121d157600080fd5b8301803591506001600160401b038211156121eb57600080fd5b602001915036819003821315611cb257600080fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161222857612228612200565b5060010190565b80820281158282048414176104e3576104e3612200565b60006020828403121561225857600080fd5b8151611c3d8161214b565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156122d45781810151838201526020016122bc565b50506000910152565b600081518084526122f58160208601602086016122b9565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090612339908301846122dd565b95945050505050565b6001600160a01b0383168152606060208201819052600090612366908301846122dd565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b60006020828403121561239b57600080fd5b81516001600160401b03808211156123b257600080fd5b818401915084601f8301126123c657600080fd5b8151818111156123d8576123d86122a3565b604051601f8201601f19908116603f01168101908382118183101715612400576124006122a3565b8160405282815287602084870101111561241957600080fd5b61242a8360208301602088016122b9565b979650505050505050565b80516001600160801b038116811461244c57600080fd5b919050565b6000806000806080858703121561246757600080fd5b84516124728161214b565b60208601519094506124838161214b565b925061249160408601612435565b6060959095015193969295505050565b818103818111156104e3576104e3612200565b808201808211156104e3576104e3612200565b600080600080608085870312156124dd57600080fd5b84516124e88161214b565b93506124f660208601612435565b925061250460408601612435565b915061251260608601612435565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516125558160178501602088016122b9565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516125868160288401602088016122b9565b01602801949350505050565b602081526000611c3d60208301846122dd565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061242a908301846122dd565b6000602082840312156125f757600080fd5b8151611c3d81611e90565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061242a908301846122dd565b6000806040838503121561267257600080fd5b8251915061268260208401612435565b90509250929050565b60018060a01b038516815263ffffffff8416602082015282604082015260806060820152600061091d60808301846122dd565b6000816126cd576126cd612200565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca26469706673582212206c348188c63426d6f8b13ed22840e216eee4ecc33d691f3a3d20b8d724efb81864736f6c63430008130033", + "nonce": "0x79", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xc28eb86e2b16cf9a9e0d2895ab823e10e3c7d636c04d00cbe3bb281adcdeb6b3", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0x16d48a7B9D48C0a1ec51DcCB9AACa3a9317bd78C", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x3d17bd", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61364680620000f46000396000f3fe6080604052600436106102465760003560e01c806366748e9811610139578063a1db9782116100b6578063cb22e01b1161007a578063cb22e01b146106e0578063d5abeb01146106f3578063de7ecf8714610709578063e985e9c51461071f578063f2fde38b1461073f578063fe325e961461075f57600080fd5b8063a1db97821461064d578063a22cb4651461066d578063aa10820e1461068d578063b88d4fde146106ad578063c87b56dd146106c057600080fd5b8063715018a6116100fd578063715018a6146105be578063754b377c146105d35780638c72c54e146105fa5780638da5cb5b1461061a57806395d89b411461063857600080fd5b806366748e98146105065780636cc82b841461053e5780636dbdaae61461055e5780636f8b44b01461057e57806370a082311461059e57600080fd5b80632e37eef6116101c7578063493548441161018b57806349354844146104525780634b102262146104725780634c5dffea146104a657806355f804b3146104c65780636352211e146104e657600080fd5b80632e37eef6146103905780632fb3b361146103df5780634128541c146103ff57806342842e0e1461041f578063430ab18f1461043257600080fd5b8063180f1ea31161020e578063180f1ea31461030f57806318160ddd146103245780631c6d76751461034757806323b872dd146103675780632a778c9b1461037a57600080fd5b806301ffc9a71461024b57806306fdde0314610280578063075834cb146102a2578063081812fc146102c4578063095ea7b3146102fc575b600080fd5b34801561025757600080fd5b5061026b610266366004612a1f565b610774565b60405190151581526020015b60405180910390f35b34801561028c57600080fd5b50610295610785565b6040516102779190612a8c565b3480156102ae57600080fd5b506102c26102bd366004612afc565b610820565b005b3480156102d057600080fd5b506102e46102df366004612bcf565b610917565b6040516001600160a01b039091168152602001610277565b6102c261030a366004612be8565b610964565b34801561031b57600080fd5b506102c2610974565b34801561033057600080fd5b50610339610c0b565b604051908152602001610277565b34801561035357600080fd5b506069546102e4906001600160a01b031681565b6102c2610375366004612c14565b610c2b565b34801561038657600080fd5b50610339606a5481565b34801561039c57600080fd5b506103b06103ab366004612bcf565b610e2b565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610277565b3480156103eb57600080fd5b506102c26103fa366004612ce0565b610e74565b34801561040b57600080fd5b506065546102e4906001600160a01b031681565b6102c261042d366004612c14565b611106565b34801561043e57600080fd5b506102c261044d366004612d7b565b611126565b34801561045e57600080fd5b506067546102e4906001600160a01b031681565b34801561047e57600080fd5b506103397f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156104b257600080fd5b506102c26104c1366004612e12565b61116d565b3480156104d257600080fd5b506102c26104e1366004612ea7565b611185565b3480156104f257600080fd5b506102e4610501366004612bcf565b61119a565b34801561051257600080fd5b50610339610521366004612be8565b606e60209081526000928352604080842090915290825290205481565b34801561054a57600080fd5b506066546102e4906001600160a01b031681565b34801561056a57600080fd5b506102c2610579366004612bcf565b6111a5565b34801561058a57600080fd5b506102c2610599366004612bcf565b6111b2565b3480156105aa57600080fd5b506103396105b9366004612ee8565b6111e7565b3480156105ca57600080fd5b506102c261124f565b3480156105df57600080fd5b506105e8600181565b60405160ff9091168152602001610277565b34801561060657600080fd5b506068546102e4906001600160a01b031681565b34801561062657600080fd5b506033546001600160a01b03166102e4565b34801561064457600080fd5b50610295611263565b34801561065957600080fd5b506102c2610668366004612be8565b61129f565b34801561067957600080fd5b506102c2610688366004612f13565b611347565b34801561069957600080fd5b506102c26106a8366004612f4c565b6113c4565b6102c26106bb366004612fc0565b6115b4565b3480156106cc57600080fd5b506102956106db366004612bcf565b6115fe565b6102c26106ee366004612e12565b611759565b3480156106ff57600080fd5b50610339606f5481565b34801561071557600080fd5b50610339606b5481565b34801561072b57600080fd5b5061026b61073a36600461303f565b611995565b34801561074b57600080fd5b506102c261075a366004612ee8565b6119d2565b34801561076b57600080fd5b506102c2611a4b565b600061077f82611c1d565b92915050565b606061078f611c6b565b600201805461079d9061306d565b80601f01602080910402602001604051908101604052809291908181526020018280546107c99061306d565b80156108165780601f106107eb57610100808354040283529160200191610816565b820191906000526020600020905b8154815290600101906020018083116107f957829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061085a5761085a6130a1565b90600052602060002090600602016003015461087691906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b1580156108e357600080fd5b505af11580156108f7573d6000803e3d6000fd5b5050505061090a8b8b8b87878787611c8f565b5050505050505050505050565b600061092282611f40565b61093f576040516333d1c03960e21b815260040160405180910390fd5b610947611c6b565b60009283526006016020525060409020546001600160a01b031690565b61097082826001611f89565b5050565b61097c61203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156109d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fa91906130e4565b90925090506001600160a01b038216610a2657604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a939190613112565b90506000612710610aa484846130cd565b610aae919061312b565b90506000610abc828461314d565b90508015610b5e5760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3c9190613160565b905080610b5c57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c045760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610bbe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be29190613160565b905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610c17611c6b565b60010154610c23611c6b565b540303919050565b6000610c3682612098565b9050836001600160a01b0316816001600160a01b031614610c695760405162a1148160e81b815260040160405180910390fd5b600080610c7584612145565b91509150610c9a8187610c853390565b6001600160a01b039081169116811491141790565b610cc557610ca88633611995565b610cc557604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610cec57604051633a954ecd60e21b815260040160405180910390fd5b610cf9868686600161216d565b8015610d0457600082555b610d0c611c6b565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610d38611c6b565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d6f611c6b565b60008681526004919091016020526040812091909155600160e11b84169003610de55760018401610d9e611c6b565b600082815260049190910160205260408120549003610de357610dbf611c6b565b548114610de35783610dcf611c6b565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610c02565b606d8181548110610e3b57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b6000805160206135f183398151915254610100900460ff16610ea9576000805160206135f18339815191525460ff1615610ead565b303b155b610f245760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b6000805160206135f183398151915254610100900460ff16158015610f60576000805160206135f1833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f805750600054600160ff909116105b80610f9a5750303b158015610f9a575060005460ff166001145b610ffd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610f1b565b6000805460ff191660011790558015611020576000805461ff0019166101001790555b61103983604051806020016040528060008152506121f4565b611041612232565b61104a87612261565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a169290911691909117905580156110df576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610c025750506000805160206135f1833981519152805461ff001916905550505050565b611121838383604051806020016040528060008152506115b4565b505050565b61112e61203e565b606f8890558786111561115457604051632627b42d60e11b815260040160405180910390fd5b611163878787878787876122b3565b5050505050505050565b61117c87878787878787611c8f565b50505050505050565b61118d61203e565b606c6111218284836131c3565b600061077f82612098565b6111ad61203e565b606b55565b6111ba61203e565b6111c26123f6565b8110156111e257604051632627b42d60e11b815260040160405180910390fd5b606f55565b60006001600160a01b038216611210576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611220611c6b565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61125761203e565b6112616000612261565b565b6060606a5460001461129c5761127a606a54612409565b60405160200161128a9190613282565b60405160208183030381529060405290505b90565b6112a761203e565b6069546001600160a01b03908116908316036112d657604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611323573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111219190613160565b80611350611c6b565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113cc61203e565b606d54156113e0576113e0606d60006129ad565b600081815b8181101561157a576000858583818110611401576114016130a1565b905060c0020180360381019061141791906132ac565b9050838160000151108061142f575060208101518151115b1561144d57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506115738161332b565b90506113e5565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6115bf848484610c2b565b6001600160a01b0383163b156115f8576115db8484848461249b565b6115f8576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061160982611f40565b61162657604051632627b42d60e11b815260040160405180910390fd5b6000611630612586565b9050805160000361165257604051806020016040528060008152509150611753565b6040805160018082528183019092526000916020820181803683370190505090508160018351611682919061314d565b81518110611692576116926130a1565b602001015160f81c60f81b816000815181106116b0576116b06130a1565b60200101906001600160f81b031916908160001a905350604051602f60f81b6020820152819060210160405160208183030381529060405280519060200120816040516020016117009190613344565b604051602081830303815290604052805190602001200361174c578261172586612595565b604051602001611736929190613360565b6040516020818303038152906040529350611750565b8293505b50505b50919050565b6117648783836125d9565b61176d86612639565b61178a576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061179f5761179f6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f54909150866118086123f6565b611812919061338f565b1115611831576040516322eb5e9560e21b815260040160405180910390fd5b8060a001516118d0576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611872908b9030908c908b908b906004016133cb565b602060405180830381865afa15801561188f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118b39190613160565b6118d0576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b845290915290205461190490889061338f565b111561192357604051631d66b65960e11b815260040160405180910390fd5b85816040015161193391906130cd565b3414611952576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a84529091528120805488929061198590849061338f565b90915550611163905088876126ea565b600061199f611c6b565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6119da61203e565b6001600160a01b038116611a3f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610f1b565b611a4881612261565b50565b611a5361203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611aad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad191906130e4565b90925090506001600160a01b038216611afd57604051632627b42d60e11b815260040160405180910390fd5b476000612710611b0d84846130cd565b611b17919061312b565b90506000611b25828461314d565b90508015611ba3576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611b7a576040519150601f19603f3d011682016040523d82523d6000602084013e611b7f565b606091505b5050905080611ba157604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c04576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611bf6576040519150601f19603f3d011682016040523d82523d6000602084013e611bfb565b606091505b5050905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611c4e57506380ac58cd60e01b6001600160e01b03198316145b8061077f5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611c9a8783836125d9565b6069546001600160a01b0316611cc357604051632d1f608d60e11b815260040160405180910390fd5b611ccc86612639565b611ce9576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611cfe57611cfe6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f5490915086611d676123f6565b611d71919061338f565b1115611d90576040516322eb5e9560e21b815260040160405180910390fd5b8060a00151611e2f576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611dd1908b9030908c908b908b906004016133cb565b602060405180830381865afa158015611dee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e129190613160565b611e2f576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b8452909152902054611e6390889061338f565b1115611e8257604051631d66b65960e11b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611eab908b906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611eff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f239190613160565b61195257604051635b88974760e11b815260040160405180910390fd5b600081600111158015611f5a5750611f56611c6b565b5482105b801561077f5750600160e01b611f6e611c6b565b60008481526004919091016020526040902054161592915050565b6000611f948361119a565b90508115611fd357336001600160a01b03821614611fd357611fb68133611995565b611fd3576040516367d9dca160e11b815260040160405180910390fd5b83611fdc611c6b565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146112615760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610f1b565b60008160011161212c576120aa611c6b565b600083815260049190910160205260408120549150600160e01b8216900361212c5780600003612127576120dc611c6b565b5482106120fc57604051636f96cda160e11b815260040160405180910390fd5b612104611c6b565b6000199092016000818152600493909301602052604090922054905080156120fc575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000612152611c6b565b60009485526006016020525050604090912080549092909150565b606b54156115f857606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156121e057600080fd5b505af1158015611163573d6000803e3d6000fd5b6000805160206135f183398151915254610100900460ff166122285760405162461bcd60e51b8152600401610f1b9061340a565b6109708282612832565b600054610100900460ff166122595760405162461bcd60e51b8152600401610f1b9061345e565b6112616128a5565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a54156122d4576040516302d1671b60e41b815260040160405180910390fd5b861580156122ea57506001600160a01b03841615155b8061230657506001600160a01b03841615801561230657508615155b1561232457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015612381573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123a59190613112565b606a556001600160a01b038316156123d357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c6123e58284836131c3565b50851561117c5761117c85876126ea565b60006001612402611c6b565b5403919050565b60606000612416836128d5565b60010190506000816001600160401b0381111561243557612435612c55565b6040519080825280601f01601f19166020018201604052801561245f576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461246957509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906124d09033908990889088906004016134a9565b6020604051808303816000875af192505050801561250b575060408051601f3d908101601f19168201909252612508918101906134e6565b60015b612569573d808015612539576040519150601f19603f3d011682016040523d82523d6000602084013e61253e565b606091505b508051600003612561576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461079d9061306d565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a9004806125af5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061260d90869086908690600401613503565b60006040518083038186803b15801561262557600080fd5b505afa15801561117c573d6000803e3d6000fd5b606d54600090821061265e57604051632627b42d60e11b815260040160405180910390fd5b6000606d8381548110612673576126736130a1565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906126e35750428160200151115b9392505050565b60006126f4611c6b565b54905060008290036127195760405163b562e8dd60e01b815260040160405180910390fd5b612726600084838561216d565b68010000000000000001820261273a611c6b565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717612775611c6b565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146127ff57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001016127c7565b508160000361282057604051622e076360e81b815260040160405180910390fd5b80612829611c6b565b55506111219050565b6000805160206135f183398151915254610100900460ff166128665760405162461bcd60e51b8152600401610f1b9061340a565b8161286f611c6b565b6002019061287d9082613531565b5080612887611c6b565b600301906128959082613531565b5060016128a0611c6b565b555050565b600054610100900460ff166128cc5760405162461bcd60e51b8152600401610f1b9061345e565b61126133612261565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106129145772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612940576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061295e57662386f26fc10000830492506010015b6305f5e1008310612976576305f5e100830492506008015b612710831061298a57612710830492506004015b6064831061299c576064830492506002015b600a831061077f5760010192915050565b5080546000825560060290600052602060002090810190611a4891905b80821115612a05576000808255600182018190556002820181905560038201819055600482015560058101805460ff191690556006016129ca565b5090565b6001600160e01b031981168114611a4857600080fd5b600060208284031215612a3157600080fd5b81356126e381612a09565b60005b83811015612a57578181015183820152602001612a3f565b50506000910152565b60008151808452612a78816020860160208601612a3c565b601f01601f19169290920160200192915050565b6020815260006126e36020830184612a60565b6001600160a01b0381168114611a4857600080fd5b60008083601f840112612ac657600080fd5b5081356001600160401b03811115612add57600080fd5b602083019150836020828501011115612af557600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215612b1e57600080fd5b612b288c35612a9f565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff81168114612b5557600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d0135811015612b7e57600080fd5b612b8e8e60e08f01358f01612ab4565b90955093506101008d0135811015612ba557600080fd5b50612bb78d6101008e01358e01612ab4565b81935080925050509295989b509295989b9093969950565b600060208284031215612be157600080fd5b5035919050565b60008060408385031215612bfb57600080fd5b8235612c0681612a9f565b946020939093013593505050565b600080600060608486031215612c2957600080fd5b8335612c3481612a9f565b92506020840135612c4481612a9f565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612c8557612c85612c55565b604051601f8501601f19908116603f01168101908282118183101715612cad57612cad612c55565b81604052809350858152868686011115612cc657600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612cf857600080fd5b8535612d0381612a9f565b94506020860135612d1381612a9f565b93506040860135612d2381612a9f565b92506060860135612d3381612a9f565b915060808601356001600160401b03811115612d4e57600080fd5b8601601f81018813612d5f57600080fd5b612d6e88823560208401612c6b565b9150509295509295909350565b60008060008060008060008060e0898b031215612d9757600080fd5b8835975060208901359650604089013595506060890135612db781612a9f565b94506080890135612dc781612a9f565b935060a0890135612dd781612a9f565b925060c08901356001600160401b03811115612df257600080fd5b612dfe8b828c01612ab4565b999c989b5096995094979396929594505050565b600080600080600080600060a0888a031215612e2d57600080fd5b8735612e3881612a9f565b9650602088013595506040880135945060608801356001600160401b0380821115612e6257600080fd5b612e6e8b838c01612ab4565b909650945060808a0135915080821115612e8757600080fd5b50612e948a828b01612ab4565b989b979a50959850939692959293505050565b60008060208385031215612eba57600080fd5b82356001600160401b03811115612ed057600080fd5b612edc85828601612ab4565b90969095509350505050565b600060208284031215612efa57600080fd5b81356126e381612a9f565b8015158114611a4857600080fd5b60008060408385031215612f2657600080fd5b8235612f3181612a9f565b91506020830135612f4181612f05565b809150509250929050565b60008060208385031215612f5f57600080fd5b82356001600160401b0380821115612f7657600080fd5b818501915085601f830112612f8a57600080fd5b813581811115612f9957600080fd5b86602060c083028501011115612fae57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612fd657600080fd5b8435612fe181612a9f565b93506020850135612ff181612a9f565b92506040850135915060608501356001600160401b0381111561301357600080fd5b8501601f8101871361302457600080fd5b61303387823560208401612c6b565b91505092959194509250565b6000806040838503121561305257600080fd5b823561305d81612a9f565b91506020830135612f4181612a9f565b600181811c9082168061308157607f821691505b60208210810361175357634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761077f5761077f6130b7565b600080604083850312156130f757600080fd5b825161310281612a9f565b6020939093015192949293505050565b60006020828403121561312457600080fd5b5051919050565b60008261314857634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561077f5761077f6130b7565b60006020828403121561317257600080fd5b81516126e381612f05565b601f82111561112157600081815260208120601f850160051c810160208610156131a45750805b601f850160051c820191505b81811015610c02578281556001016131b0565b6001600160401b038311156131da576131da612c55565b6131ee836131e8835461306d565b8361317d565b6000601f841160018114613222576000851561320a5750838201355b600019600387901b1c1916600186901b178355610c04565b600083815260209020601f19861690835b828110156132535786850135825560209485019460019092019101613233565b50868210156132705760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b81526000825161329f816002850160208701612a3c565b9190910160020192915050565b600060c082840312156132be57600080fd5b60405160c081018181106001600160401b03821117156132e0576132e0612c55565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561331f81612f05565b60a08201529392505050565b60006001820161333d5761333d6130b7565b5060010190565b60008251613356818460208701612a3c565b9190910192915050565b60008351613372818460208801612a3c565b835190830190613386818360208801612a3c565b01949350505050565b8082018082111561077f5761077f6130b7565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b03868116825285166020820152604081018490526080606082018190526000906133ff90830184866133a2565b979650505050505050565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906134dc90830184612a60565b9695505050505050565b6000602082840312156134f857600080fd5b81516126e381612a09565b6001600160a01b038416815260406020820181905260009061352890830184866133a2565b95945050505050565b81516001600160401b0381111561354a5761354a612c55565b61355e81613558845461306d565b8461317d565b602080601f831160018114613593576000841561357b5750858301515b600019600386901b1c1916600185901b178555610c02565b600085815260208120601f198616915b828110156135c2578886015182559484019460019091019084016135a3565b50858210156135e05787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa26469706673582212206f508db960be3106d2173815bb62c8108cf3bfa7055b207f68a5889fdbbde0b164736f6c63430008130033", + "nonce": "0x7a", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x1c4ddc83ae8554a8877368d5090e660be65fdc65cebd3abf173721263322dadc", + "transactionType": "CREATE", + "contractName": "ERC721ABOE", + "contractAddress": "0xD0aA9747B3BA7418456d58e5e1D21aB8F2ba4f87", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x3b2cf4", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61348780620000f46000396000f3fe6080604052600436106102305760003560e01c806366748e981161012e578063a1db9782116100ab578063cb22e01b1161006f578063cb22e01b146106aa578063de7ecf87146106bd578063e985e9c5146106d3578063f2fde38b146106f3578063fe325e961461071357600080fd5b8063a1db978214610617578063a22cb46514610637578063aa10820e14610657578063b88d4fde14610677578063c87b56dd1461068a57600080fd5b8063754b377c116100f2578063754b377c1461057d5780638c72c54e146105a45780638d6d31e3146105c45780638da5cb5b146105e457806395d89b411461060257600080fd5b806366748e98146104d05780636cc82b84146105085780636dbdaae61461052857806370a0823114610548578063715018a61461056857600080fd5b80632a778c9b116101bc5780634935484411610180578063493548441461041c5780634b1022621461043c5780634c5dffea1461047057806355f804b3146104905780636352211e146104b057600080fd5b80632a778c9b146103645780632e37eef61461037a5780632fb3b361146103c95780634128541c146103e957806342842e0e1461040957600080fd5b8063095ea7b311610203578063095ea7b3146102e6578063180f1ea3146102f957806318160ddd1461030e5780631c6d76751461033157806323b872dd1461035157600080fd5b806301ffc9a71461023557806306fdde031461026a578063075834cb1461028c578063081812fc146102ae575b600080fd5b34801561024157600080fd5b5061025561025036600461287c565b610728565b60405190151581526020015b60405180910390f35b34801561027657600080fd5b5061027f610739565b60405161026191906128e9565b34801561029857600080fd5b506102ac6102a7366004612959565b6107d4565b005b3480156102ba57600080fd5b506102ce6102c9366004612a2c565b6108cb565b6040516001600160a01b039091168152602001610261565b6102ac6102f4366004612a45565b610918565b34801561030557600080fd5b506102ac610928565b34801561031a57600080fd5b50610323610bbf565b604051908152602001610261565b34801561033d57600080fd5b506069546102ce906001600160a01b031681565b6102ac61035f366004612a71565b610bdf565b34801561037057600080fd5b50610323606a5481565b34801561038657600080fd5b5061039a610395366004612a2c565b610ddf565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610261565b3480156103d557600080fd5b506102ac6103e4366004612b3d565b610e28565b3480156103f557600080fd5b506065546102ce906001600160a01b031681565b6102ac610417366004612a71565b6110ba565b34801561042857600080fd5b506067546102ce906001600160a01b031681565b34801561044857600080fd5b506103237fdcfc50123fc6ea3c803b5b1b4cbbc9ce5b81f13451fd3124e43ef593fd840d1981565b34801561047c57600080fd5b506102ac61048b366004612bd8565b6110da565b34801561049c57600080fd5b506102ac6104ab366004612c6d565b6110f2565b3480156104bc57600080fd5b506102ce6104cb366004612a2c565b611107565b3480156104dc57600080fd5b506103236104eb366004612a45565b606e60209081526000928352604080842090915290825290205481565b34801561051457600080fd5b506066546102ce906001600160a01b031681565b34801561053457600080fd5b506102ac610543366004612a2c565b611112565b34801561055457600080fd5b50610323610563366004612cae565b61111f565b34801561057457600080fd5b506102ac611187565b34801561058957600080fd5b50610592600181565b60405160ff9091168152602001610261565b3480156105b057600080fd5b506068546102ce906001600160a01b031681565b3480156105d057600080fd5b506102ac6105df366004612ccb565b61119b565b3480156105f057600080fd5b506033546001600160a01b03166102ce565b34801561060e57600080fd5b5061027f6111b2565b34801561062357600080fd5b506102ac610632366004612a45565b6111ee565b34801561064357600080fd5b506102ac610652366004612d54565b611296565b34801561066357600080fd5b506102ac610672366004612d8d565b611313565b6102ac610685366004612e01565b611503565b34801561069657600080fd5b5061027f6106a5366004612a2c565b61154d565b6102ac6106b8366004612bd8565b6116a8565b3480156106c957600080fd5b50610323606b5481565b3480156106df57600080fd5b506102556106ee366004612e80565b61184d565b3480156106ff57600080fd5b506102ac61070e366004612cae565b61188a565b34801561071f57600080fd5b506102ac611903565b600061073382611ad5565b92915050565b6060610743611b23565b600201805461075190612eae565b80601f016020809104026020016040519081016040528092919081815260200182805461077d90612eae565b80156107ca5780601f1061079f576101008083540402835291602001916107ca565b820191906000526020600020905b8154815290600101906020018083116107ad57829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061080e5761080e612ee2565b90600052602060002090600602016003015461082a9190612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b15801561089757600080fd5b505af11580156108ab573d6000803e3d6000fd5b505050506108be8b8b8b87878787611b47565b5050505050505050505050565b60006108d682611db0565b6108f3576040516333d1c03960e21b815260040160405180910390fd5b6108fb611b23565b60009283526006016020525060409020546001600160a01b031690565b61092482826001611df9565b5050565b610930611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa15801561098a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ae9190612f25565b90925090506001600160a01b0382166109da57604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a479190612f53565b90506000612710610a588484612f0e565b610a629190612f6c565b90506000610a708284612f8e565b90508015610b125760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610acc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af09190612fa1565b905080610b1057604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb85760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b969190612fa1565b905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610bcb611b23565b60010154610bd7611b23565b540303919050565b6000610bea82611f08565b9050836001600160a01b0316816001600160a01b031614610c1d5760405162a1148160e81b815260040160405180910390fd5b600080610c2984611fb5565b91509150610c4e8187610c393390565b6001600160a01b039081169116811491141790565b610c7957610c5c863361184d565b610c7957604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610ca057604051633a954ecd60e21b815260040160405180910390fd5b610cad8686866001611fdd565b8015610cb857600082555b610cc0611b23565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610cec611b23565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d23611b23565b60008681526004919091016020526040812091909155600160e11b84169003610d995760018401610d52611b23565b600082815260049190910160205260408120549003610d9757610d73611b23565b548114610d975783610d83611b23565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610bb6565b606d8181548110610def57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b60008051602061343283398151915254610100900460ff16610e5d576000805160206134328339815191525460ff1615610e61565b303b155b610ed85760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b60008051602061343283398151915254610100900460ff16158015610f1457600080516020613432833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f345750600054600160ff909116105b80610f4e5750303b158015610f4e575060005460ff166001145b610fb15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610ecf565b6000805460ff191660011790558015610fd4576000805461ff0019166101001790555b610fed8360405180602001604052806000815250612064565b610ff56120a2565b610ffe876120d1565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a16929091169190911790558015611093576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610bb6575050600080516020613432833981519152805461ff001916905550505050565b6110d583838360405180602001604052806000815250611503565b505050565b6110e987878787878787611b47565b50505050505050565b6110fa611eae565b606c6110d5828483613004565b600061073382611f08565b61111a611eae565b606b55565b60006001600160a01b038216611148576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611158611b23565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61118f611eae565b61119960006120d1565b565b6111a3611eae565b6110e987878787878787612123565b6060606a546000146111eb576111c9606a54612266565b6040516020016111d991906130c3565b60405160208183030381529060405290505b90565b6111f6611eae565b6069546001600160a01b039081169083160361122557604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611272573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d59190612fa1565b8061129f611b23565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61131b611eae565b606d541561132f5761132f606d600061280a565b600081815b818110156114c957600085858381811061135057611350612ee2565b905060c0020180360381019061136691906130ed565b9050838160000151108061137e575060208101518151115b1561139c57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506114c28161316c565b9050611334565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b61150e848484610bdf565b6001600160a01b0383163b156115475761152a848484846122f8565b611547576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061155882611db0565b61157557604051632627b42d60e11b815260040160405180910390fd5b600061157f6123e3565b905080516000036115a1576040518060200160405280600081525091506116a2565b60408051600180825281830190925260009160208201818036833701905050905081600183516115d19190612f8e565b815181106115e1576115e1612ee2565b602001015160f81c60f81b816000815181106115ff576115ff612ee2565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161164f9190613185565b604051602081830303815290604052805190602001200361169b5782611674866123f2565b6040516020016116859291906131a1565b604051602081830303815290604052935061169f565b8293505b50505b50919050565b606a546000036116cb576040516316812a5360e11b815260040160405180910390fd5b6116d6878383612436565b6116df86612496565b6116fc576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061171157611711612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820181905290915061180a576066546040516332f1944960e21b81526001600160a01b039091169063cbc65124906117ac908b9030908c908b908b906004016131f9565b602060405180830381865afa1580156117c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ed9190612fa1565b61180a576040516352c973a760e01b815260040160405180910390fd5b85816040015161181a9190612f0e565b3414611839576040516318f4198360e21b815260040160405180910390fd5b6118438887612547565b5050505050505050565b6000611857611b23565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b611892611eae565b6001600160a01b0381166118f75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610ecf565b611900816120d1565b50565b61190b611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611965573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119899190612f25565b90925090506001600160a01b0382166119b557604051632627b42d60e11b815260040160405180910390fd5b4760006127106119c58484612f0e565b6119cf9190612f6c565b905060006119dd8284612f8e565b90508015611a5b576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611a32576040519150601f19603f3d011682016040523d82523d6000602084013e611a37565b606091505b5050905080611a5957604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb8576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611aae576040519150601f19603f3d011682016040523d82523d6000602084013e611ab3565b606091505b5050905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611b0657506380ac58cd60e01b6001600160e01b03198316145b806107335750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611b52878383612436565b6069546001600160a01b0316611b7b57604051632d1f608d60e11b815260040160405180910390fd5b611b8486612496565b611ba1576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611bb657611bb6612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a08201819052909150611caf576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611c51908b9030908c908b908b906004016131f9565b602060405180830381865afa158015611c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c929190612fa1565b611caf576040516352c973a760e01b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611cd8908b90612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611d2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d509190612fa1565b611d6d57604051635b88974760e11b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a845290915281208054889290611da0908490613238565b9091555061184390508887612547565b600081600111158015611dca5750611dc6611b23565b5482105b80156107335750600160e01b611dde611b23565b60008481526004919091016020526040902054161592915050565b6000611e0483611107565b90508115611e4357336001600160a01b03821614611e4357611e26813361184d565b611e43576040516367d9dca160e11b815260040160405180910390fd5b83611e4c611b23565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146111995760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610ecf565b600081600111611f9c57611f1a611b23565b600083815260049190910160205260408120549150600160e01b82169003611f9c5780600003611f9757611f4c611b23565b548210611f6c57604051636f96cda160e11b815260040160405180910390fd5b611f74611b23565b600019909201600081815260049390930160205260409092205490508015611f6c575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611fc2611b23565b60009485526006016020525050604090912080549092909150565b606b541561154757606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b15801561205057600080fd5b505af1158015611843573d6000803e3d6000fd5b60008051602061343283398151915254610100900460ff166120985760405162461bcd60e51b8152600401610ecf9061324b565b610924828261268f565b600054610100900460ff166120c95760405162461bcd60e51b8152600401610ecf9061329f565b611199612702565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a5415612144576040516302d1671b60e41b815260040160405180910390fd5b8615801561215a57506001600160a01b03841615155b8061217657506001600160a01b03841615801561217657508615155b1561219457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af11580156121f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122159190612f53565b606a556001600160a01b0383161561224357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c612255828483613004565b5085156110e9576110e98587612547565b6060600061227383612732565b60010190506000816001600160401b0381111561229257612292612ab2565b6040519080825280601f01601f1916602001820160405280156122bc576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846122c657509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a029061232d9033908990889088906004016132ea565b6020604051808303816000875af1925050508015612368575060408051601f3d908101601f1916820190925261236591810190613327565b60015b6123c6573d808015612396576040519150601f19603f3d011682016040523d82523d6000602084013e61239b565b606091505b5080516000036123be576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461075190612eae565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a90048061240c5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061246a90869086908690600401613344565b60006040518083038186803b15801561248257600080fd5b505afa1580156110e9573d6000803e3d6000fd5b606d5460009082106124bb57604051632627b42d60e11b815260040160405180910390fd5b6000606d83815481106124d0576124d0612ee2565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906125405750428160200151115b9392505050565b6000612551611b23565b54905060008290036125765760405163b562e8dd60e01b815260040160405180910390fd5b6125836000848385611fdd565b680100000000000000018202612597611b23565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b17176125d2611b23565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b81811461265c57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101612624565b508160000361267d57604051622e076360e81b815260040160405180910390fd5b80612686611b23565b55506110d59050565b60008051602061343283398151915254610100900460ff166126c35760405162461bcd60e51b8152600401610ecf9061324b565b816126cc611b23565b600201906126da9082613372565b50806126e4611b23565b600301906126f29082613372565b5060016126fd611b23565b555050565b600054610100900460ff166127295760405162461bcd60e51b8152600401610ecf9061329f565b611199336120d1565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106127715772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061279d576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106127bb57662386f26fc10000830492506010015b6305f5e10083106127d3576305f5e100830492506008015b61271083106127e757612710830492506004015b606483106127f9576064830492506002015b600a83106107335760010192915050565b508054600082556006029060005260206000209081019061190091905b80821115612862576000808255600182018190556002820181905560038201819055600482015560058101805460ff19169055600601612827565b5090565b6001600160e01b03198116811461190057600080fd5b60006020828403121561288e57600080fd5b813561254081612866565b60005b838110156128b457818101518382015260200161289c565b50506000910152565b600081518084526128d5816020860160208601612899565b601f01601f19169290920160200192915050565b60208152600061254060208301846128bd565b6001600160a01b038116811461190057600080fd5b60008083601f84011261292357600080fd5b5081356001600160401b0381111561293a57600080fd5b60208301915083602082850101111561295257600080fd5b9250929050565b60008060008060008060008060008060006101208c8e03121561297b57600080fd5b6129858c356128fc565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff811681146129b257600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d01358110156129db57600080fd5b6129eb8e60e08f01358f01612911565b90955093506101008d0135811015612a0257600080fd5b50612a148d6101008e01358e01612911565b81935080925050509295989b509295989b9093969950565b600060208284031215612a3e57600080fd5b5035919050565b60008060408385031215612a5857600080fd5b8235612a63816128fc565b946020939093013593505050565b600080600060608486031215612a8657600080fd5b8335612a91816128fc565b92506020840135612aa1816128fc565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612ae257612ae2612ab2565b604051601f8501601f19908116603f01168101908282118183101715612b0a57612b0a612ab2565b81604052809350858152868686011115612b2357600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612b5557600080fd5b8535612b60816128fc565b94506020860135612b70816128fc565b93506040860135612b80816128fc565b92506060860135612b90816128fc565b915060808601356001600160401b03811115612bab57600080fd5b8601601f81018813612bbc57600080fd5b612bcb88823560208401612ac8565b9150509295509295909350565b600080600080600080600060a0888a031215612bf357600080fd5b8735612bfe816128fc565b9650602088013595506040880135945060608801356001600160401b0380821115612c2857600080fd5b612c348b838c01612911565b909650945060808a0135915080821115612c4d57600080fd5b50612c5a8a828b01612911565b989b979a50959850939692959293505050565b60008060208385031215612c8057600080fd5b82356001600160401b03811115612c9657600080fd5b612ca285828601612911565b90969095509350505050565b600060208284031215612cc057600080fd5b8135612540816128fc565b600080600080600080600060c0888a031215612ce657600080fd5b87359650602088013595506040880135612cff816128fc565b94506060880135612d0f816128fc565b93506080880135612d1f816128fc565b925060a08801356001600160401b03811115612d3a57600080fd5b612c5a8a828b01612911565b801515811461190057600080fd5b60008060408385031215612d6757600080fd5b8235612d72816128fc565b91506020830135612d8281612d46565b809150509250929050565b60008060208385031215612da057600080fd5b82356001600160401b0380821115612db757600080fd5b818501915085601f830112612dcb57600080fd5b813581811115612dda57600080fd5b86602060c083028501011115612def57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612e1757600080fd5b8435612e22816128fc565b93506020850135612e32816128fc565b92506040850135915060608501356001600160401b03811115612e5457600080fd5b8501601f81018713612e6557600080fd5b612e7487823560208401612ac8565b91505092959194509250565b60008060408385031215612e9357600080fd5b8235612e9e816128fc565b91506020830135612d82816128fc565b600181811c90821680612ec257607f821691505b6020821081036116a257634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761073357610733612ef8565b60008060408385031215612f3857600080fd5b8251612f43816128fc565b6020939093015192949293505050565b600060208284031215612f6557600080fd5b5051919050565b600082612f8957634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561073357610733612ef8565b600060208284031215612fb357600080fd5b815161254081612d46565b601f8211156110d557600081815260208120601f850160051c81016020861015612fe55750805b601f850160051c820191505b81811015610bb657828155600101612ff1565b6001600160401b0383111561301b5761301b612ab2565b61302f836130298354612eae565b83612fbe565b6000601f841160018114613063576000851561304b5750838201355b600019600387901b1c1916600186901b178355610bb8565b600083815260209020601f19861690835b828110156130945786850135825560209485019460019092019101613074565b50868210156130b15760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b8152600082516130e0816002850160208701612899565b9190910160020192915050565b600060c082840312156130ff57600080fd5b60405160c081018181106001600160401b038211171561312157613121612ab2565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561316081612d46565b60a08201529392505050565b60006001820161317e5761317e612ef8565b5060010190565b60008251613197818460208701612899565b9190910192915050565b600083516131b3818460208801612899565b8351908301906131c7818360208801612899565b01949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b038681168252851660208201526040810184905260806060820181905260009061322d90830184866131d0565b979650505050505050565b8082018082111561073357610733612ef8565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061331d908301846128bd565b9695505050505050565b60006020828403121561333957600080fd5b815161254081612866565b6001600160a01b038416815260406020820181905260009061336990830184866131d0565b95945050505050565b81516001600160401b0381111561338b5761338b612ab2565b61339f816133998454612eae565b84612fbe565b602080601f8311600181146133d457600084156133bc5750858301515b600019600386901b1c1916600185901b178555610bb6565b600085815260208120601f198616915b82811015613403578886015182559484019460019091019084016133e4565b50858210156134215787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220cafa3a7f682c36f07e8cad71c42b1c0e02beaeddb35d76fd32ad310217ab076964736f6c63430008130033", + "nonce": "0x7b", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xa9e4de9145777a32b211c8613f5a993f28b55fc3bef000f8c55f892fe64d3cfe", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0x2375172Ed700d254928784CaFc9C647e94FDb776", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x1f76b5", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611b41806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106102115760003560e01c80637d2405bb11610125578063b7dd8d20116100ad578063d547741f1161007c578063d547741f14610494578063d57f966b146104a7578063d8f4b6fd146104b0578063f339b08e146104c5578063fdbda0ec146104d857600080fd5b8063b7dd8d2014610446578063ba4f11c914610459578063bdd2fe781461046c578063cfc5a0c01461047f57600080fd5b80638e837abf116100f45780638e837abf146103f257806391d148541461040557806398eaa0c0146104185780639f1fb80d1461042b578063a217fddf1461043e57600080fd5b80637d2405bb146103a6578063832ca2f5146103b957806385be1c15146103cc5780638d058ac8146103df57600080fd5b806336568abe116101a85780634eb6b7f6116101775780634eb6b7f614610347578063641254bd1461035a578063678213491461036d5780636b7e3949146103805780636cc82b841461039357600080fd5b806336568abe146102fb5780634128541c1461030e57806347fcac3b146103215780634c7dfac31461033457600080fd5b80631ce6e444116101e45780631ce6e444146102915780631e5b3684146102a4578063248a9ca3146102b75780632f2ff15d146102e857600080fd5b806301ffc9a7146102165780631459457a1461023e57806318c25d8a146102535780631c8518c214610266575b600080fd5b61022961022436600461161d565b61050b565b60405190151581526020015b60405180910390f35b61025161024c36600461165e565b610542565b005b6102516102613660046116c3565b6106c3565b609b54610279906001600160a01b031681565b6040516001600160a01b039091168152602001610235565b609a54610279906001600160a01b031681565b6102516102b23660046116ed565b61083d565b6102da6102c53660046116ed565b60009081526065602052604090206001015490565b604051908152602001610235565b6102516102f6366004611706565b6108ef565b610251610309366004611706565b610914565b609854610279906001600160a01b031681565b61027961032f3660046116c3565b610992565b610229610342366004611732565b6109a6565b609e54610279906001600160a01b031681565b610251610368366004611732565b6109c0565b61025161037b36600461174d565b6109ee565b61025161038e366004611732565b610ad6565b609954610279906001600160a01b031681565b6102516103b4366004611732565b610b06565b6102516103c7366004611732565b610b34565b6102516103da366004611706565b610b62565b6102796103ed3660046116ed565b610be8565b610251610400366004611732565b610c02565b610229610413366004611706565b610c30565b610279610426366004611789565b610c5b565b61025161043936600461184e565b610c8f565b6102da600081565b6102516104543660046118b4565b610dc0565b6102da610467366004611732565b610e94565b609c54610279906001600160a01b031681565b6102da600080516020611acc83398151915281565b6102516104a2366004611706565b610f32565b6102da609d5481565b6102da600080516020611aec83398151915281565b6102796104d33660046116ed565b610f57565b6104eb6104e63660046116ed565b610f81565b604080516001600160a01b03938416815292909116602083015201610235565b60006001600160e01b03198216637965db0b60e01b148061053c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156105625750600054600160ff909116105b8061057c5750303b15801561057c575060005460ff166001145b6105e45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610607576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d5561066a610fba565b610675600033611027565b80156106bb576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b600080516020611acc8339815191526106db81611031565b6127108211156106fe57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661072557604051632627b42d60e11b815260040160405180910390fd5b609c5460009061073d906001600160a01b031661103e565b609854609e5460405163c0c53b8b60e01b81526001600160a01b0388811660048301529283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561079957600080fd5b505af11580156107ad573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b9199150606401600060405180830381600087803b15801561080757600080fd5b505af115801561081b573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856110d8565b50505050565b600080516020611aec83398151915261085581611031565b609b5460009061086e906001600160a01b03168461115e565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b1580156108c857600080fd5b505af11580156108dc573d6000803e3d6000fd5b505050506108ea81336111fb565b505050565b60008281526065602052604090206001015461090a81611031565b6108ea83836110d8565b6001600160a01b03811633146109845760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016105db565b61098e8282611353565b5050565b600061099f8383306113ba565b9392505050565b600061053c600080516020611aec83398151915283610c30565b60006109cb81611031565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b600080516020611acc833981519152610a0681611031565b612710821115610a2957604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b038416610a5057604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b91990606401600060405180830381600087803b158015610aa657600080fd5b505af1158015610aba573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856108ef565b600080516020611acc833981519152610aee81611031565b61098e600080516020611aec83398151915283610f32565b6000610b1181611031565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b3f81611031565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b6d81611031565b81609f8481548110610b8157610b81611904565b60009182526020918290200180546001600160a01b0319166001600160a01b0393841617905560408051868152928516918301919091527f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a1505050565b609b5460009061053c906001600160a01b031683306113ba565b6000610c0d81611031565b50609e80546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600061099f609f8481548110610c7357610c73611904565b6000918252602090912001546001600160a01b031683306113ba565b600080516020611acc833981519152610ca781611031565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610cf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d15919061191a565b610d3257604051634f3bd42760e01b815260040160405180910390fd5b6000610d3e868461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610d84948c9491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610d9e57600080fd5b505af1158015610db2573d6000803e3d6000fd5b505050506106bb81866111fb565b600080516020611aec833981519152610dd881611031565b6000610e0b609f8681548110610df057610df0611904565b6000918252602090912001546001600160a01b03168461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610e5194339491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610e6b57600080fd5b505af1158015610e7f573d6000803e3d6000fd5b50505050610e8d81336111fb565b5050505050565b600080610ea081611031565b609f80546001810182556000919091527f0bc14066c33013fe88f66e314e4cf150b0b2d4d6451a1a51dbbd1c27cd11de28810180546001600160a01b0319166001600160a01b0386169081179091556040805183815260208101929092529193507f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a150919050565b600082815260656020526040902060010154610f4d81611031565b6108ea8383611353565b609f8181548110610f6757600080fd5b6000918252602090912001546001600160a01b0316905081565b60978181548110610f9157600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff166110255760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016105db565b565b61098e82826110d8565b61103b8133611416565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b0381166110d35760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b60448201526064016105db565b919050565b6110e28282610c30565b61098e5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561111a3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b03811661053c5760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c656400000000000000000060448201526064016105db565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c906112d19085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b1580156112eb57600080fd5b505af11580156112ff573d6000803e3d6000fd5b50505050609d60008154611312906119e9565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b61135d8282610c30565b1561098e5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6114208282610c30565b61098e5761142d8161146f565b611438836020611481565b604051602001611449929190611a02565b60408051601f198184030181529082905262461bcd60e51b82526105db91600401611a77565b606061053c6001600160a01b03831660145b60606000611490836002611a8a565b61149b906002611aa1565b67ffffffffffffffff8111156114b3576114b36117ab565b6040519080825280601f01601f1916602001820160405280156114dd576020820181803683370190505b509050600360fc1b816000815181106114f8576114f8611904565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061152757611527611904565b60200101906001600160f81b031916908160001a905350600061154b846002611a8a565b611556906001611aa1565b90505b60018111156115ce576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061158a5761158a611904565b1a60f81b8282815181106115a0576115a0611904565b60200101906001600160f81b031916908160001a90535060049490941c936115c781611ab4565b9050611559565b50831561099f5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016105db565b60006020828403121561162f57600080fd5b81356001600160e01b03198116811461099f57600080fd5b80356001600160a01b03811681146110d357600080fd5b600080600080600060a0868803121561167657600080fd5b61167f86611647565b945061168d60208701611647565b935061169b60408701611647565b92506116a960608701611647565b91506116b760808701611647565b90509295509295909350565b600080604083850312156116d657600080fd5b6116df83611647565b946020939093013593505050565b6000602082840312156116ff57600080fd5b5035919050565b6000806040838503121561171957600080fd5b8235915061172960208401611647565b90509250929050565b60006020828403121561174457600080fd5b61099f82611647565b60008060006060848603121561176257600080fd5b61176b84611647565b925061177960208501611647565b9150604084013590509250925092565b6000806040838503121561179c57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126117d257600080fd5b813567ffffffffffffffff808211156117ed576117ed6117ab565b604051601f8301601f19908116603f01168101908282118183101715611815576118156117ab565b8160405283815286602085880101111561182e57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561186457600080fd5b61186d85611647565b935061187b60208601611647565b9250604085013567ffffffffffffffff81111561189757600080fd5b6118a3878288016117c1565b949793965093946060013593505050565b6000806000606084860312156118c957600080fd5b83359250602084013567ffffffffffffffff8111156118e757600080fd5b6118f3868287016117c1565b925050604084013590509250925092565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561192c57600080fd5b8151801515811461099f57600080fd5b60005b8381101561195757818101518382015260200161193f565b50506000910152565b6000815180845261197881602086016020860161193c565b601f01601f19169290920160200192915050565b6001600160a01b038681168252858116602083015284811660408301528316606082015260a0608082018190526000906119c890830184611960565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016119fb576119fb6119d3565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611a3a81601785016020880161193c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611a6b81602884016020880161193c565b01602801949350505050565b60208152600061099f6020830184611960565b808202811582820484141761053c5761053c6119d3565b8082018082111561053c5761053c6119d3565b600081611ac357611ac36119d3565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220906cbaa757902a4ee379e641d3c2abcc38d848ac202ab2a5a6f4bef0d176c88c64736f6c63430008130033", + "nonce": "0x7c", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [], + "libraries": [], + "pending": [ + "0x27a3a89a8803b9be85659957a47d161c0cd459a98524f62934ffd06bab1abdb6", + "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "0x7b2fed735f4906d188df5cdece043a45ef7071f49df64b204b3c450f07c6aae1", + "0xc28eb86e2b16cf9a9e0d2895ab823e10e3c7d636c04d00cbe3bb281adcdeb6b3", + "0x1c4ddc83ae8554a8877368d5090e660be65fdc65cebd3abf173721263322dadc", + "0xa9e4de9145777a32b211c8613f5a993f28b55fc3bef000f8c55f892fe64d3cfe" + ], + "returns": {}, + "timestamp": 1704893536, + "chain": 8453, + "multi": false, + "commit": "9d351c5" +} \ No newline at end of file diff --git a/broadcast/deploy-v1_2.s.sol/8453/run-1704893543.json b/broadcast/deploy-v1_2.s.sol/8453/run-1704893543.json new file mode 100644 index 0000000..eb342be --- /dev/null +++ b/broadcast/deploy-v1_2.s.sol/8453/run-1704893543.json @@ -0,0 +1,354 @@ +{ + "transactions": [ + { + "hash": "0x27a3a89a8803b9be85659957a47d161c0cd459a98524f62934ffd06bab1abdb6", + "transactionType": "CREATE", + "contractName": "ABKYCModule", + "contractAddress": "0xdC8B3030E54e88F08Ca01B842448fdcE9b511CdB", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0xf307e", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b610c68806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063627cdcb9116100a2578063ccac2c1311610071578063ccac2c131461022b578063cfc5a0c01461023e578063d547741f14610265578063e83931af14610278578063f2c526bc1461016357600080fd5b8063627cdcb9146101f557806391d14854146101fd578063a217fddf14610210578063c4d66de81461021857600080fd5b80632f2ff15d116100de5780632f2ff15d146101a957806336568abe146101bc578063437a0de9146101cf5780634a96535b146101e257600080fd5b806301ffc9a7146101105780631180b553146101385780631723576414610163578063248a9ca314610178575b600080fd5b61012361011e366004610977565b610289565b60405190151581526020015b60405180910390f35b61014b6101463660046109bd565b6102c0565b6040516001600160a01b03909116815260200161012f565b6101766101713660046109d8565b505050565b005b61019b610186366004610a5b565b60009081526065602052604090206001015490565b60405190815260200161012f565b6101766101b7366004610a74565b6102cb565b6101766101ca366004610a74565b6102f0565b60975461014b906001600160a01b031681565b6101766101f03660046109bd565b610373565b6101766103a1565b61012361020b366004610a74565b6103c2565b61019b600081565b6101766102263660046109bd565b6103ed565b610176610239366004610aa0565b61054b565b61019b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b610176610273366004610a74565b6105a4565b6101766102863660046109bd565b50565b60006001600160e01b03198216637965db0b60e01b14806102ba57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006102ba826105c9565b6000828152606560205260409020600101546102e6816105fb565b6101718383610605565b6001600160a01b03811633146103655760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61036f828261068b565b5050565b600061037e816105fb565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006103ac816105fb565b6099600081546103bb90610ae0565b9091555050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600054610100900460ff161580801561040d5750600054600160ff909116105b806104275750303b158015610427575060005460ff166001145b61048a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161035c565b6000805460ff1916600117905580156104ad576000805461ff0019166101001790555b6001600160a01b0382166104d457604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b0384161790556104f76106f2565b61050260003361075f565b801561036f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e610575816105fb565b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b6000828152606560205260409020600101546105bf816105fb565b610171838361068b565b6097546001600160a01b03828116600090815260986020526040902054918116911680156105f5578091505b50919050565b6102868133610769565b61060f82826103c2565b61036f5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556106473390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61069582826103c2565b1561036f5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600054610100900460ff1661075d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161035c565b565b61036f8282610605565b61077382826103c2565b61036f57610780816107c2565b61078b8360206107d4565b60405160200161079c929190610b1d565b60408051601f198184030181529082905262461bcd60e51b825261035c91600401610b92565b60606102ba6001600160a01b03831660145b606060006107e3836002610bc5565b6107ee906002610bdc565b67ffffffffffffffff81111561080657610806610bef565b6040519080825280601f01601f191660200182016040528015610830576020820181803683370190505b509050600360fc1b8160008151811061084b5761084b610c05565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061087a5761087a610c05565b60200101906001600160f81b031916908160001a905350600061089e846002610bc5565b6108a9906001610bdc565b90505b6001811115610921576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106108dd576108dd610c05565b1a60f81b8282815181106108f3576108f3610c05565b60200101906001600160f81b031916908160001a90535060049490941c9361091a81610c1b565b90506108ac565b5083156109705760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161035c565b9392505050565b60006020828403121561098957600080fd5b81356001600160e01b03198116811461097057600080fd5b80356001600160a01b03811681146109b857600080fd5b919050565b6000602082840312156109cf57600080fd5b610970826109a1565b6000806000604084860312156109ed57600080fd5b6109f6846109a1565b9250602084013567ffffffffffffffff80821115610a1357600080fd5b818601915086601f830112610a2757600080fd5b813581811115610a3657600080fd5b876020828501011115610a4857600080fd5b6020830194508093505050509250925092565b600060208284031215610a6d57600080fd5b5035919050565b60008060408385031215610a8757600080fd5b82359150610a97602084016109a1565b90509250929050565b60008060408385031215610ab357600080fd5b610abc836109a1565b9150610a97602084016109a1565b634e487b7160e01b600052601160045260246000fd5b600060018201610af257610af2610aca565b5060010190565b60005b83811015610b14578181015183820152602001610afc565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351610b55816017850160208801610af9565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351610b86816028840160208801610af9565b01602801949350505050565b6020815260008251806020840152610bb1816040850160208701610af9565b601f01601f19169190910160400192915050565b80820281158282048414176102ba576102ba610aca565b808201808211156102ba576102ba610aca565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081610c2a57610c2a610aca565b50600019019056fea26469706673582212208d91efe3e0bad5f5e8fd18795d05e2647d4c6c39a1fa25642cadbe390e30f32a64736f6c63430008130033", + "nonce": "0x77", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "function": null, + "arguments": [ + "0xdC8B3030E54e88F08Ca01B842448fdcE9b511CdB", + "0x3934000d33f8B4df78BA0D3cDfa61e620580822c", + "0xc4d66de80000000000000000000000002bbc44d4449e947d3612c2b16147d9206eaed990" + ], + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0xcdd8f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122027bb32bdabd86208be11b9ccb5c5f1a473bdb5213dea3f6d98324022f2029b1464736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000dc8b3030e54e88f08ca01b842448fdce9b511cdb0000000000000000000000003934000d33f8b4df78ba0d3cdfa61e620580822c00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de80000000000000000000000002bbc44d4449e947d3612c2b16147d9206eaed99000000000000000000000000000000000000000000000000000000000", + "nonce": "0x78", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x7b2fed735f4906d188df5cdece043a45ef7071f49df64b204b3c450f07c6aae1", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0x65B7B3f5c5b01f06D3D5545d72e6962AD664F999", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x2caa67", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61274b80620000f46000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806378c5195e11610104578063b08805a5116100a2578063d518b7ff11610071578063d518b7ff14610470578063d547741f14610483578063df3d053b14610496578063f8372320146104a957600080fd5b8063b08805a5146103f8578063b81155b51461040b578063c0c53b8b14610448578063cfc5a0c01461045b57600080fd5b806391d14854116100de57806391d14854146103a15780639ab29f2b146103b4578063a217fddf146103c7578063a626f573146103cf57600080fd5b806378c5195e146103685780638c72c54e1461037b5780638fd1101c1461038e57600080fd5b806336568abe1161017c5780634e4345921161014b5780634e434592146103155780634eb6b7f6146103285780636ce10ab61461033b578063754b377c1461034e57600080fd5b806336568abe146102c757806342f1e879146102da578063482a61ff146102ef5780634acdd3581461030257600080fd5b80631c44eb4f116101b85780631c44eb4f1461022f5780631d3b405a14610242578063248a9ca3146102835780632f2ff15d146102b457600080fd5b806301ffc9a7146101df57806319c0fab9146102075780631bfb1bb81461021c575b600080fd5b6101f26101ed366004611c44565b6104b2565b60405190151581526020015b60405180910390f35b61021a610215366004611cb9565b6104e9565b005b61021a61022a366004611d52565b610603565b61021a61023d366004611e0c565b6106b5565b61026b610250366004611e77565b6099602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b6102a6610291366004611e77565b60009081526065602052604090206001015490565b6040519081526020016101fe565b61021a6102c2366004611ea5565b610706565b61021a6102d5366004611ea5565b610730565b6102a66000805160206126f683398151915281565b61021a6102fd366004611ed5565b6107b3565b61021a610310366004611f20565b6107c8565b61021a610323366004611f6f565b6107fc565b60985461026b906001600160a01b031681565b61021a610349366004611fe2565b610867565b610356600181565b60405160ff90911681526020016101fe565b6102a6610376366004611ea5565b6108f9565b60975461026b906001600160a01b031681565b61021a61039c366004612023565b610927565b6101f26103af366004611ea5565b61096b565b6102a66103c2366004611ea5565b610996565b6102a6600081565b61026b6103dd366004611e77565b609a602052600090815260409020546001600160a01b031681565b61021a610406366004612069565b6109cd565b61041e610419366004611e77565b6109ef565b604080516001600160801b03948516815292841660208401529216918101919091526060016101fe565b61021a61045636600461208b565b610a24565b6102a66000805160206126d683398151915281565b61021a61047e3660046120d6565b610b96565b61021a610491366004611ea5565b610c70565b61021a6104a4366004612159565b610c95565b6102a66103e881565b60006001600160e01b03198216637965db0b60e01b14806104e357506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000805160206126d683398151915261050181610d39565b83868380831461052457604051632627b42d60e11b815260040160405180910390fd5b60005b838110156105f65761058289898381811061054457610544612187565b9050602002016020810190610559919061219d565b88888481811061056b5761056b612187565b905060200281019061057d91906121ba565b610d46565b60005b838110156105e5576105d58c8c838181106105a2576105a2612187565b905060200201358b8b858181106105bb576105bb612187565b90506020020160208101906105d0919061219d565b610daf565b6105de81612216565b9050610585565b506105ef81612216565b9050610527565b5050505050505050505050565b6000805160206126d683398151915261061b81610d39565b838280821461063d57604051632627b42d60e11b815260040160405180910390fd5b60005b828110156106aa5761068488888381811061065d5761065d612187565b9050602002016020810190610672919061219d565b87878481811061056b5761056b612187565b61069a898989848181106105bb576105bb612187565b6106a381612216565b9050610640565b505050505050505050565b6106c0338383610d46565b8260005b818110156106fe576106ee8686838181106106e1576106e1612187565b9050602002013533610daf565b6106f781612216565b90506106c4565b505050505050565b60008281526065602052604090206001015461072181610d39565b61072b8383610dd3565b505050565b6001600160a01b03811633146107a55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107af8282610e59565b5050565b6107be338383610d46565b61072b8333610daf565b6000805160206126d68339815191526107e081610d39565b6107eb848484610d46565b6107f58585610daf565b5050505050565b6000805160206126d683398151915261081481610d39565b61081f848484610d46565b8460005b8181101561085d5761084d88888381811061084057610840612187565b9050602002013587610daf565b61085681612216565b9050610823565b5050505050505050565b6000805160206126f683398151915261087f81610d39565b60006108946001600160a01b03851684610ec0565b9050806108b457604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260996020908152604080832080546001600160a01b039687166001600160a01b031991821617909155609a9092529091208054929093169116179055565b6000828152609a602052604081205461091d906001600160a01b0316308585610fe5565b9695505050505050565b6000805160206126f683398151915261093f81610d39565b61095585846109506103e88661222f565b611094565b6107f584846109666103e88661222f565b611145565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000828152609a60205260408120546109ba906001600160a01b0316308585610fe5565b506001600160801b031695945050505050565b6000805160206126f68339815191526109e581610d39565b61072b838361119b565b6000818152609a602052604081205481908190610a16906001600160a01b03163086611225565b919790965090945092505050565b600054610100900460ff1615808015610a445750600054600160ff909116105b80610a5e5750303b158015610a5e575060005460ff166001145b610ac15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161079c565b6000805460ff191660011790558015610ae4576000805461ff0019166101001790555b610aec6112cb565b610af7600085610dd3565b610b02600033610e59565b610b1a6000805160206126f683398151915284610dd3565b609880546001600160a01b038085166001600160a01b03199283161790925560978054928716929091169190911790558015610b90576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000805160206126f6833981519152610bae81610d39565b83828114610bcf57604051632627b42d60e11b815260040160405180910390fd5b60005b818110156106aa57610c1d89888884818110610bf057610bf0612187565b905060200201356103e8888886818110610c0c57610c0c612187565b90506020020135610950919061222f565b610c6088888884818110610c3357610c33612187565b905060200201356103e8888886818110610c4f57610c4f612187565b90506020020135610966919061222f565b610c6981612216565b9050610bd2565b600082815260656020526040902060010154610c8b81610d39565b61072b8383610e59565b6000610ca081610d39565b81610d2f576000848152609a6020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610d09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2d9190612246565b505b610b90848461119b565b610d438133611338565b50565b6098546040516305c8d5d960e21b81526001600160a01b0390911690631723576490610d7a90869086908690600401612263565b60006040518083038186803b158015610d9257600080fd5b505afa158015610da6573d6000803e3d6000fd5b50505050505050565b6000828152609a602052604090205461072b906001600160a01b0316308484611391565b610ddd828261096b565b6107af5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610e153390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610e63828261096b565b156107af5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610ece856114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610f0c57610f0c6122a3565b6040519080825280601f01601f191660200182016040528015610f36576020820181803683370190505b50604051602401610f4993929190612309565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610f9293925090600401612342565b6000604051808303816000875af1158015610fb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd99190810190612389565b50600195945050505050565b6000806000806000610ff689611683565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa15801561105d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110819190612451565b929c919b50995090975095505050505050565b6001600160a01b0383166110a757505050565b6000828152609a60205260408120546110cb906001600160a01b0316308587610fe5565b506001600160801b031692505050600082826110e791906124a1565b11611116576000838152609a6020526040902054611110906001600160a01b03163085876117e8565b50610b90565b6107f5838561112585856124a1565b6000878152609a60205260409020546001600160a01b0316929190611836565b6001600160a01b03831661115857505050565b6000828152609a602052604081205461117c906001600160a01b0316308587610fe5565b506001600160801b0316925050506107f58385848461112591906124b4565b6000828152609a60205260408120546111bf906001600160a01b03163085856118c3565b506000848152609a60205260409020549091506111e6906001600160a01b03168483611968565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910160405180910390a1505050565b600080600080600061123688611683565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b991906124c7565b94509450945094505093509350935093565b600054610100900460ff166113365760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161079c565b565b611342828261096b565b6107af5761134f81611a90565b61135a836020611aa2565b60405160200161136b92919061251d565b60408051601f198184030181529082905262461bcd60e51b825261079c91600401612592565b600080600061139f876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b038111156113df576113df6122a3565b6040519080825280601f01601f191660200182016040528015611409576020820181803683370190505b5060405160240161141e9594939291906125a5565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261146793925090600401612342565b6000604051808303816000875af1158015611486573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114ae9190810190612389565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661158157826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa15801561155a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061157e91906125e5565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156115e5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061160991906125e5565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b03821661166857611668612602565b6001600160a01b03811661167e5761167e612602565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661174857826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611721573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061174591906125e5565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156117ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d091906125e5565b90506001600160a01b03821661166857611668612602565b60008060006117f6876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b038111156113df576113df6122a3565b6000806000611844876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b03811115611884576118846122a3565b6040519080825280601f01601f1916602001820160405280156118ae576020820181803683370190505b5060405160240161141e959493929190612618565b60008060006118d187611683565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa158015611936573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195a919061265f565b925092505094509492505050565b6000806000611976866114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b038111156119b5576119b56122a3565b6040519080825280601f01601f1916602001820160405280156119df576020820181803683370190505b506040516024016119f3949392919061268b565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252611a3c93925090600401612342565b6000604051808303816000875af1158015611a5b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a839190810190612389565b5060019695505050505050565b60606104e36001600160a01b03831660145b60606000611ab183600261222f565b611abc9060026124b4565b6001600160401b03811115611ad357611ad36122a3565b6040519080825280601f01601f191660200182016040528015611afd576020820181803683370190505b509050600360fc1b81600081518110611b1857611b18612187565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611b4757611b47612187565b60200101906001600160f81b031916908160001a9053506000611b6b84600261222f565b611b769060016124b4565b90505b6001811115611bee576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611baa57611baa612187565b1a60f81b828281518110611bc057611bc0612187565b60200101906001600160f81b031916908160001a90535060049490941c93611be7816126be565b9050611b79565b508315611c3d5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161079c565b9392505050565b600060208284031215611c5657600080fd5b81356001600160e01b031981168114611c3d57600080fd5b60008083601f840112611c8057600080fd5b5081356001600160401b03811115611c9757600080fd5b6020830191508360208260051b8501011115611cb257600080fd5b9250929050565b60008060008060008060608789031215611cd257600080fd5b86356001600160401b0380821115611ce957600080fd5b611cf58a838b01611c6e565b90985096506020890135915080821115611d0e57600080fd5b611d1a8a838b01611c6e565b90965094506040890135915080821115611d3357600080fd5b50611d4089828a01611c6e565b979a9699509497509295939492505050565b600080600080600060608688031215611d6a57600080fd5b8535945060208601356001600160401b0380821115611d8857600080fd5b611d9489838a01611c6e565b90965094506040880135915080821115611dad57600080fd5b50611dba88828901611c6e565b969995985093965092949392505050565b60008083601f840112611ddd57600080fd5b5081356001600160401b03811115611df457600080fd5b602083019150836020828501011115611cb257600080fd5b60008060008060408587031215611e2257600080fd5b84356001600160401b0380821115611e3957600080fd5b611e4588838901611c6e565b90965094506020870135915080821115611e5e57600080fd5b50611e6b87828801611dcb565b95989497509550505050565b600060208284031215611e8957600080fd5b5035919050565b6001600160a01b0381168114610d4357600080fd5b60008060408385031215611eb857600080fd5b823591506020830135611eca81611e90565b809150509250929050565b600080600060408486031215611eea57600080fd5b8335925060208401356001600160401b03811115611f0757600080fd5b611f1386828701611dcb565b9497909650939450505050565b60008060008060608587031215611f3657600080fd5b843593506020850135611f4881611e90565b925060408501356001600160401b03811115611f6357600080fd5b611e6b87828801611dcb565b600080600080600060608688031215611f8757600080fd5b85356001600160401b0380821115611f9e57600080fd5b611faa89838a01611c6e565b909750955060208801359150611fbf82611e90565b90935060408701359080821115611fd557600080fd5b50611dba88828901611dcb565b600080600060608486031215611ff757600080fd5b833561200281611e90565b9250602084013561201281611e90565b929592945050506040919091013590565b6000806000806080858703121561203957600080fd5b843561204481611e90565b9350602085013561205481611e90565b93969395505050506040820135916060013590565b6000806040838503121561207c57600080fd5b50508035926020909101359150565b6000806000606084860312156120a057600080fd5b83356120ab81611e90565b925060208401356120bb81611e90565b915060408401356120cb81611e90565b809150509250925092565b600080600080600080608087890312156120ef57600080fd5b86356120fa81611e90565b9550602087013561210a81611e90565b945060408701356001600160401b038082111561212657600080fd5b6121328a838b01611c6e565b90965094506060890135915080821115611d3357600080fd5b8015158114610d4357600080fd5b60008060006060848603121561216e57600080fd5b833592506020840135915060408401356120cb8161214b565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156121af57600080fd5b8135611c3d81611e90565b6000808335601e198436030181126121d157600080fd5b8301803591506001600160401b038211156121eb57600080fd5b602001915036819003821315611cb257600080fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161222857612228612200565b5060010190565b80820281158282048414176104e3576104e3612200565b60006020828403121561225857600080fd5b8151611c3d8161214b565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156122d45781810151838201526020016122bc565b50506000910152565b600081518084526122f58160208601602086016122b9565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090612339908301846122dd565b95945050505050565b6001600160a01b0383168152606060208201819052600090612366908301846122dd565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b60006020828403121561239b57600080fd5b81516001600160401b03808211156123b257600080fd5b818401915084601f8301126123c657600080fd5b8151818111156123d8576123d86122a3565b604051601f8201601f19908116603f01168101908382118183101715612400576124006122a3565b8160405282815287602084870101111561241957600080fd5b61242a8360208301602088016122b9565b979650505050505050565b80516001600160801b038116811461244c57600080fd5b919050565b6000806000806080858703121561246757600080fd5b84516124728161214b565b60208601519094506124838161214b565b925061249160408601612435565b6060959095015193969295505050565b818103818111156104e3576104e3612200565b808201808211156104e3576104e3612200565b600080600080608085870312156124dd57600080fd5b84516124e88161214b565b93506124f660208601612435565b925061250460408601612435565b915061251260608601612435565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516125558160178501602088016122b9565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516125868160288401602088016122b9565b01602801949350505050565b602081526000611c3d60208301846122dd565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061242a908301846122dd565b6000602082840312156125f757600080fd5b8151611c3d81611e90565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061242a908301846122dd565b6000806040838503121561267257600080fd5b8251915061268260208401612435565b90509250929050565b60018060a01b038516815263ffffffff8416602082015282604082015260806060820152600061091d60808301846122dd565b6000816126cd576126cd612200565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca26469706673582212206c348188c63426d6f8b13ed22840e216eee4ecc33d691f3a3d20b8d724efb81864736f6c63430008130033", + "nonce": "0x79", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xc28eb86e2b16cf9a9e0d2895ab823e10e3c7d636c04d00cbe3bb281adcdeb6b3", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0x16d48a7B9D48C0a1ec51DcCB9AACa3a9317bd78C", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x3d17bd", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61364680620000f46000396000f3fe6080604052600436106102465760003560e01c806366748e9811610139578063a1db9782116100b6578063cb22e01b1161007a578063cb22e01b146106e0578063d5abeb01146106f3578063de7ecf8714610709578063e985e9c51461071f578063f2fde38b1461073f578063fe325e961461075f57600080fd5b8063a1db97821461064d578063a22cb4651461066d578063aa10820e1461068d578063b88d4fde146106ad578063c87b56dd146106c057600080fd5b8063715018a6116100fd578063715018a6146105be578063754b377c146105d35780638c72c54e146105fa5780638da5cb5b1461061a57806395d89b411461063857600080fd5b806366748e98146105065780636cc82b841461053e5780636dbdaae61461055e5780636f8b44b01461057e57806370a082311461059e57600080fd5b80632e37eef6116101c7578063493548441161018b57806349354844146104525780634b102262146104725780634c5dffea146104a657806355f804b3146104c65780636352211e146104e657600080fd5b80632e37eef6146103905780632fb3b361146103df5780634128541c146103ff57806342842e0e1461041f578063430ab18f1461043257600080fd5b8063180f1ea31161020e578063180f1ea31461030f57806318160ddd146103245780631c6d76751461034757806323b872dd146103675780632a778c9b1461037a57600080fd5b806301ffc9a71461024b57806306fdde0314610280578063075834cb146102a2578063081812fc146102c4578063095ea7b3146102fc575b600080fd5b34801561025757600080fd5b5061026b610266366004612a1f565b610774565b60405190151581526020015b60405180910390f35b34801561028c57600080fd5b50610295610785565b6040516102779190612a8c565b3480156102ae57600080fd5b506102c26102bd366004612afc565b610820565b005b3480156102d057600080fd5b506102e46102df366004612bcf565b610917565b6040516001600160a01b039091168152602001610277565b6102c261030a366004612be8565b610964565b34801561031b57600080fd5b506102c2610974565b34801561033057600080fd5b50610339610c0b565b604051908152602001610277565b34801561035357600080fd5b506069546102e4906001600160a01b031681565b6102c2610375366004612c14565b610c2b565b34801561038657600080fd5b50610339606a5481565b34801561039c57600080fd5b506103b06103ab366004612bcf565b610e2b565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610277565b3480156103eb57600080fd5b506102c26103fa366004612ce0565b610e74565b34801561040b57600080fd5b506065546102e4906001600160a01b031681565b6102c261042d366004612c14565b611106565b34801561043e57600080fd5b506102c261044d366004612d7b565b611126565b34801561045e57600080fd5b506067546102e4906001600160a01b031681565b34801561047e57600080fd5b506103397f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156104b257600080fd5b506102c26104c1366004612e12565b61116d565b3480156104d257600080fd5b506102c26104e1366004612ea7565b611185565b3480156104f257600080fd5b506102e4610501366004612bcf565b61119a565b34801561051257600080fd5b50610339610521366004612be8565b606e60209081526000928352604080842090915290825290205481565b34801561054a57600080fd5b506066546102e4906001600160a01b031681565b34801561056a57600080fd5b506102c2610579366004612bcf565b6111a5565b34801561058a57600080fd5b506102c2610599366004612bcf565b6111b2565b3480156105aa57600080fd5b506103396105b9366004612ee8565b6111e7565b3480156105ca57600080fd5b506102c261124f565b3480156105df57600080fd5b506105e8600181565b60405160ff9091168152602001610277565b34801561060657600080fd5b506068546102e4906001600160a01b031681565b34801561062657600080fd5b506033546001600160a01b03166102e4565b34801561064457600080fd5b50610295611263565b34801561065957600080fd5b506102c2610668366004612be8565b61129f565b34801561067957600080fd5b506102c2610688366004612f13565b611347565b34801561069957600080fd5b506102c26106a8366004612f4c565b6113c4565b6102c26106bb366004612fc0565b6115b4565b3480156106cc57600080fd5b506102956106db366004612bcf565b6115fe565b6102c26106ee366004612e12565b611759565b3480156106ff57600080fd5b50610339606f5481565b34801561071557600080fd5b50610339606b5481565b34801561072b57600080fd5b5061026b61073a36600461303f565b611995565b34801561074b57600080fd5b506102c261075a366004612ee8565b6119d2565b34801561076b57600080fd5b506102c2611a4b565b600061077f82611c1d565b92915050565b606061078f611c6b565b600201805461079d9061306d565b80601f01602080910402602001604051908101604052809291908181526020018280546107c99061306d565b80156108165780601f106107eb57610100808354040283529160200191610816565b820191906000526020600020905b8154815290600101906020018083116107f957829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061085a5761085a6130a1565b90600052602060002090600602016003015461087691906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b1580156108e357600080fd5b505af11580156108f7573d6000803e3d6000fd5b5050505061090a8b8b8b87878787611c8f565b5050505050505050505050565b600061092282611f40565b61093f576040516333d1c03960e21b815260040160405180910390fd5b610947611c6b565b60009283526006016020525060409020546001600160a01b031690565b61097082826001611f89565b5050565b61097c61203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156109d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fa91906130e4565b90925090506001600160a01b038216610a2657604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a939190613112565b90506000612710610aa484846130cd565b610aae919061312b565b90506000610abc828461314d565b90508015610b5e5760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3c9190613160565b905080610b5c57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c045760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610bbe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be29190613160565b905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610c17611c6b565b60010154610c23611c6b565b540303919050565b6000610c3682612098565b9050836001600160a01b0316816001600160a01b031614610c695760405162a1148160e81b815260040160405180910390fd5b600080610c7584612145565b91509150610c9a8187610c853390565b6001600160a01b039081169116811491141790565b610cc557610ca88633611995565b610cc557604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610cec57604051633a954ecd60e21b815260040160405180910390fd5b610cf9868686600161216d565b8015610d0457600082555b610d0c611c6b565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610d38611c6b565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d6f611c6b565b60008681526004919091016020526040812091909155600160e11b84169003610de55760018401610d9e611c6b565b600082815260049190910160205260408120549003610de357610dbf611c6b565b548114610de35783610dcf611c6b565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610c02565b606d8181548110610e3b57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b6000805160206135f183398151915254610100900460ff16610ea9576000805160206135f18339815191525460ff1615610ead565b303b155b610f245760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b6000805160206135f183398151915254610100900460ff16158015610f60576000805160206135f1833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f805750600054600160ff909116105b80610f9a5750303b158015610f9a575060005460ff166001145b610ffd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610f1b565b6000805460ff191660011790558015611020576000805461ff0019166101001790555b61103983604051806020016040528060008152506121f4565b611041612232565b61104a87612261565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a169290911691909117905580156110df576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610c025750506000805160206135f1833981519152805461ff001916905550505050565b611121838383604051806020016040528060008152506115b4565b505050565b61112e61203e565b606f8890558786111561115457604051632627b42d60e11b815260040160405180910390fd5b611163878787878787876122b3565b5050505050505050565b61117c87878787878787611c8f565b50505050505050565b61118d61203e565b606c6111218284836131c3565b600061077f82612098565b6111ad61203e565b606b55565b6111ba61203e565b6111c26123f6565b8110156111e257604051632627b42d60e11b815260040160405180910390fd5b606f55565b60006001600160a01b038216611210576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611220611c6b565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61125761203e565b6112616000612261565b565b6060606a5460001461129c5761127a606a54612409565b60405160200161128a9190613282565b60405160208183030381529060405290505b90565b6112a761203e565b6069546001600160a01b03908116908316036112d657604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611323573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111219190613160565b80611350611c6b565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113cc61203e565b606d54156113e0576113e0606d60006129ad565b600081815b8181101561157a576000858583818110611401576114016130a1565b905060c0020180360381019061141791906132ac565b9050838160000151108061142f575060208101518151115b1561144d57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506115738161332b565b90506113e5565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6115bf848484610c2b565b6001600160a01b0383163b156115f8576115db8484848461249b565b6115f8576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061160982611f40565b61162657604051632627b42d60e11b815260040160405180910390fd5b6000611630612586565b9050805160000361165257604051806020016040528060008152509150611753565b6040805160018082528183019092526000916020820181803683370190505090508160018351611682919061314d565b81518110611692576116926130a1565b602001015160f81c60f81b816000815181106116b0576116b06130a1565b60200101906001600160f81b031916908160001a905350604051602f60f81b6020820152819060210160405160208183030381529060405280519060200120816040516020016117009190613344565b604051602081830303815290604052805190602001200361174c578261172586612595565b604051602001611736929190613360565b6040516020818303038152906040529350611750565b8293505b50505b50919050565b6117648783836125d9565b61176d86612639565b61178a576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061179f5761179f6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f54909150866118086123f6565b611812919061338f565b1115611831576040516322eb5e9560e21b815260040160405180910390fd5b8060a001516118d0576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611872908b9030908c908b908b906004016133cb565b602060405180830381865afa15801561188f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118b39190613160565b6118d0576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b845290915290205461190490889061338f565b111561192357604051631d66b65960e11b815260040160405180910390fd5b85816040015161193391906130cd565b3414611952576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a84529091528120805488929061198590849061338f565b90915550611163905088876126ea565b600061199f611c6b565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6119da61203e565b6001600160a01b038116611a3f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610f1b565b611a4881612261565b50565b611a5361203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611aad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad191906130e4565b90925090506001600160a01b038216611afd57604051632627b42d60e11b815260040160405180910390fd5b476000612710611b0d84846130cd565b611b17919061312b565b90506000611b25828461314d565b90508015611ba3576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611b7a576040519150601f19603f3d011682016040523d82523d6000602084013e611b7f565b606091505b5050905080611ba157604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c04576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611bf6576040519150601f19603f3d011682016040523d82523d6000602084013e611bfb565b606091505b5050905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611c4e57506380ac58cd60e01b6001600160e01b03198316145b8061077f5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611c9a8783836125d9565b6069546001600160a01b0316611cc357604051632d1f608d60e11b815260040160405180910390fd5b611ccc86612639565b611ce9576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611cfe57611cfe6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f5490915086611d676123f6565b611d71919061338f565b1115611d90576040516322eb5e9560e21b815260040160405180910390fd5b8060a00151611e2f576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611dd1908b9030908c908b908b906004016133cb565b602060405180830381865afa158015611dee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e129190613160565b611e2f576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b8452909152902054611e6390889061338f565b1115611e8257604051631d66b65960e11b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611eab908b906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611eff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f239190613160565b61195257604051635b88974760e11b815260040160405180910390fd5b600081600111158015611f5a5750611f56611c6b565b5482105b801561077f5750600160e01b611f6e611c6b565b60008481526004919091016020526040902054161592915050565b6000611f948361119a565b90508115611fd357336001600160a01b03821614611fd357611fb68133611995565b611fd3576040516367d9dca160e11b815260040160405180910390fd5b83611fdc611c6b565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146112615760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610f1b565b60008160011161212c576120aa611c6b565b600083815260049190910160205260408120549150600160e01b8216900361212c5780600003612127576120dc611c6b565b5482106120fc57604051636f96cda160e11b815260040160405180910390fd5b612104611c6b565b6000199092016000818152600493909301602052604090922054905080156120fc575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000612152611c6b565b60009485526006016020525050604090912080549092909150565b606b54156115f857606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156121e057600080fd5b505af1158015611163573d6000803e3d6000fd5b6000805160206135f183398151915254610100900460ff166122285760405162461bcd60e51b8152600401610f1b9061340a565b6109708282612832565b600054610100900460ff166122595760405162461bcd60e51b8152600401610f1b9061345e565b6112616128a5565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a54156122d4576040516302d1671b60e41b815260040160405180910390fd5b861580156122ea57506001600160a01b03841615155b8061230657506001600160a01b03841615801561230657508615155b1561232457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015612381573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123a59190613112565b606a556001600160a01b038316156123d357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c6123e58284836131c3565b50851561117c5761117c85876126ea565b60006001612402611c6b565b5403919050565b60606000612416836128d5565b60010190506000816001600160401b0381111561243557612435612c55565b6040519080825280601f01601f19166020018201604052801561245f576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461246957509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906124d09033908990889088906004016134a9565b6020604051808303816000875af192505050801561250b575060408051601f3d908101601f19168201909252612508918101906134e6565b60015b612569573d808015612539576040519150601f19603f3d011682016040523d82523d6000602084013e61253e565b606091505b508051600003612561576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461079d9061306d565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a9004806125af5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061260d90869086908690600401613503565b60006040518083038186803b15801561262557600080fd5b505afa15801561117c573d6000803e3d6000fd5b606d54600090821061265e57604051632627b42d60e11b815260040160405180910390fd5b6000606d8381548110612673576126736130a1565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906126e35750428160200151115b9392505050565b60006126f4611c6b565b54905060008290036127195760405163b562e8dd60e01b815260040160405180910390fd5b612726600084838561216d565b68010000000000000001820261273a611c6b565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717612775611c6b565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146127ff57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001016127c7565b508160000361282057604051622e076360e81b815260040160405180910390fd5b80612829611c6b565b55506111219050565b6000805160206135f183398151915254610100900460ff166128665760405162461bcd60e51b8152600401610f1b9061340a565b8161286f611c6b565b6002019061287d9082613531565b5080612887611c6b565b600301906128959082613531565b5060016128a0611c6b565b555050565b600054610100900460ff166128cc5760405162461bcd60e51b8152600401610f1b9061345e565b61126133612261565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106129145772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612940576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061295e57662386f26fc10000830492506010015b6305f5e1008310612976576305f5e100830492506008015b612710831061298a57612710830492506004015b6064831061299c576064830492506002015b600a831061077f5760010192915050565b5080546000825560060290600052602060002090810190611a4891905b80821115612a05576000808255600182018190556002820181905560038201819055600482015560058101805460ff191690556006016129ca565b5090565b6001600160e01b031981168114611a4857600080fd5b600060208284031215612a3157600080fd5b81356126e381612a09565b60005b83811015612a57578181015183820152602001612a3f565b50506000910152565b60008151808452612a78816020860160208601612a3c565b601f01601f19169290920160200192915050565b6020815260006126e36020830184612a60565b6001600160a01b0381168114611a4857600080fd5b60008083601f840112612ac657600080fd5b5081356001600160401b03811115612add57600080fd5b602083019150836020828501011115612af557600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215612b1e57600080fd5b612b288c35612a9f565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff81168114612b5557600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d0135811015612b7e57600080fd5b612b8e8e60e08f01358f01612ab4565b90955093506101008d0135811015612ba557600080fd5b50612bb78d6101008e01358e01612ab4565b81935080925050509295989b509295989b9093969950565b600060208284031215612be157600080fd5b5035919050565b60008060408385031215612bfb57600080fd5b8235612c0681612a9f565b946020939093013593505050565b600080600060608486031215612c2957600080fd5b8335612c3481612a9f565b92506020840135612c4481612a9f565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612c8557612c85612c55565b604051601f8501601f19908116603f01168101908282118183101715612cad57612cad612c55565b81604052809350858152868686011115612cc657600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612cf857600080fd5b8535612d0381612a9f565b94506020860135612d1381612a9f565b93506040860135612d2381612a9f565b92506060860135612d3381612a9f565b915060808601356001600160401b03811115612d4e57600080fd5b8601601f81018813612d5f57600080fd5b612d6e88823560208401612c6b565b9150509295509295909350565b60008060008060008060008060e0898b031215612d9757600080fd5b8835975060208901359650604089013595506060890135612db781612a9f565b94506080890135612dc781612a9f565b935060a0890135612dd781612a9f565b925060c08901356001600160401b03811115612df257600080fd5b612dfe8b828c01612ab4565b999c989b5096995094979396929594505050565b600080600080600080600060a0888a031215612e2d57600080fd5b8735612e3881612a9f565b9650602088013595506040880135945060608801356001600160401b0380821115612e6257600080fd5b612e6e8b838c01612ab4565b909650945060808a0135915080821115612e8757600080fd5b50612e948a828b01612ab4565b989b979a50959850939692959293505050565b60008060208385031215612eba57600080fd5b82356001600160401b03811115612ed057600080fd5b612edc85828601612ab4565b90969095509350505050565b600060208284031215612efa57600080fd5b81356126e381612a9f565b8015158114611a4857600080fd5b60008060408385031215612f2657600080fd5b8235612f3181612a9f565b91506020830135612f4181612f05565b809150509250929050565b60008060208385031215612f5f57600080fd5b82356001600160401b0380821115612f7657600080fd5b818501915085601f830112612f8a57600080fd5b813581811115612f9957600080fd5b86602060c083028501011115612fae57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612fd657600080fd5b8435612fe181612a9f565b93506020850135612ff181612a9f565b92506040850135915060608501356001600160401b0381111561301357600080fd5b8501601f8101871361302457600080fd5b61303387823560208401612c6b565b91505092959194509250565b6000806040838503121561305257600080fd5b823561305d81612a9f565b91506020830135612f4181612a9f565b600181811c9082168061308157607f821691505b60208210810361175357634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761077f5761077f6130b7565b600080604083850312156130f757600080fd5b825161310281612a9f565b6020939093015192949293505050565b60006020828403121561312457600080fd5b5051919050565b60008261314857634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561077f5761077f6130b7565b60006020828403121561317257600080fd5b81516126e381612f05565b601f82111561112157600081815260208120601f850160051c810160208610156131a45750805b601f850160051c820191505b81811015610c02578281556001016131b0565b6001600160401b038311156131da576131da612c55565b6131ee836131e8835461306d565b8361317d565b6000601f841160018114613222576000851561320a5750838201355b600019600387901b1c1916600186901b178355610c04565b600083815260209020601f19861690835b828110156132535786850135825560209485019460019092019101613233565b50868210156132705760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b81526000825161329f816002850160208701612a3c565b9190910160020192915050565b600060c082840312156132be57600080fd5b60405160c081018181106001600160401b03821117156132e0576132e0612c55565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561331f81612f05565b60a08201529392505050565b60006001820161333d5761333d6130b7565b5060010190565b60008251613356818460208701612a3c565b9190910192915050565b60008351613372818460208801612a3c565b835190830190613386818360208801612a3c565b01949350505050565b8082018082111561077f5761077f6130b7565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b03868116825285166020820152604081018490526080606082018190526000906133ff90830184866133a2565b979650505050505050565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906134dc90830184612a60565b9695505050505050565b6000602082840312156134f857600080fd5b81516126e381612a09565b6001600160a01b038416815260406020820181905260009061352890830184866133a2565b95945050505050565b81516001600160401b0381111561354a5761354a612c55565b61355e81613558845461306d565b8461317d565b602080601f831160018114613593576000841561357b5750858301515b600019600386901b1c1916600185901b178555610c02565b600085815260208120601f198616915b828110156135c2578886015182559484019460019091019084016135a3565b50858210156135e05787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa26469706673582212206f508db960be3106d2173815bb62c8108cf3bfa7055b207f68a5889fdbbde0b164736f6c63430008130033", + "nonce": "0x7a", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x1c4ddc83ae8554a8877368d5090e660be65fdc65cebd3abf173721263322dadc", + "transactionType": "CREATE", + "contractName": "ERC721ABOE", + "contractAddress": "0xD0aA9747B3BA7418456d58e5e1D21aB8F2ba4f87", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x3b2cf4", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61348780620000f46000396000f3fe6080604052600436106102305760003560e01c806366748e981161012e578063a1db9782116100ab578063cb22e01b1161006f578063cb22e01b146106aa578063de7ecf87146106bd578063e985e9c5146106d3578063f2fde38b146106f3578063fe325e961461071357600080fd5b8063a1db978214610617578063a22cb46514610637578063aa10820e14610657578063b88d4fde14610677578063c87b56dd1461068a57600080fd5b8063754b377c116100f2578063754b377c1461057d5780638c72c54e146105a45780638d6d31e3146105c45780638da5cb5b146105e457806395d89b411461060257600080fd5b806366748e98146104d05780636cc82b84146105085780636dbdaae61461052857806370a0823114610548578063715018a61461056857600080fd5b80632a778c9b116101bc5780634935484411610180578063493548441461041c5780634b1022621461043c5780634c5dffea1461047057806355f804b3146104905780636352211e146104b057600080fd5b80632a778c9b146103645780632e37eef61461037a5780632fb3b361146103c95780634128541c146103e957806342842e0e1461040957600080fd5b8063095ea7b311610203578063095ea7b3146102e6578063180f1ea3146102f957806318160ddd1461030e5780631c6d76751461033157806323b872dd1461035157600080fd5b806301ffc9a71461023557806306fdde031461026a578063075834cb1461028c578063081812fc146102ae575b600080fd5b34801561024157600080fd5b5061025561025036600461287c565b610728565b60405190151581526020015b60405180910390f35b34801561027657600080fd5b5061027f610739565b60405161026191906128e9565b34801561029857600080fd5b506102ac6102a7366004612959565b6107d4565b005b3480156102ba57600080fd5b506102ce6102c9366004612a2c565b6108cb565b6040516001600160a01b039091168152602001610261565b6102ac6102f4366004612a45565b610918565b34801561030557600080fd5b506102ac610928565b34801561031a57600080fd5b50610323610bbf565b604051908152602001610261565b34801561033d57600080fd5b506069546102ce906001600160a01b031681565b6102ac61035f366004612a71565b610bdf565b34801561037057600080fd5b50610323606a5481565b34801561038657600080fd5b5061039a610395366004612a2c565b610ddf565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610261565b3480156103d557600080fd5b506102ac6103e4366004612b3d565b610e28565b3480156103f557600080fd5b506065546102ce906001600160a01b031681565b6102ac610417366004612a71565b6110ba565b34801561042857600080fd5b506067546102ce906001600160a01b031681565b34801561044857600080fd5b506103237fdcfc50123fc6ea3c803b5b1b4cbbc9ce5b81f13451fd3124e43ef593fd840d1981565b34801561047c57600080fd5b506102ac61048b366004612bd8565b6110da565b34801561049c57600080fd5b506102ac6104ab366004612c6d565b6110f2565b3480156104bc57600080fd5b506102ce6104cb366004612a2c565b611107565b3480156104dc57600080fd5b506103236104eb366004612a45565b606e60209081526000928352604080842090915290825290205481565b34801561051457600080fd5b506066546102ce906001600160a01b031681565b34801561053457600080fd5b506102ac610543366004612a2c565b611112565b34801561055457600080fd5b50610323610563366004612cae565b61111f565b34801561057457600080fd5b506102ac611187565b34801561058957600080fd5b50610592600181565b60405160ff9091168152602001610261565b3480156105b057600080fd5b506068546102ce906001600160a01b031681565b3480156105d057600080fd5b506102ac6105df366004612ccb565b61119b565b3480156105f057600080fd5b506033546001600160a01b03166102ce565b34801561060e57600080fd5b5061027f6111b2565b34801561062357600080fd5b506102ac610632366004612a45565b6111ee565b34801561064357600080fd5b506102ac610652366004612d54565b611296565b34801561066357600080fd5b506102ac610672366004612d8d565b611313565b6102ac610685366004612e01565b611503565b34801561069657600080fd5b5061027f6106a5366004612a2c565b61154d565b6102ac6106b8366004612bd8565b6116a8565b3480156106c957600080fd5b50610323606b5481565b3480156106df57600080fd5b506102556106ee366004612e80565b61184d565b3480156106ff57600080fd5b506102ac61070e366004612cae565b61188a565b34801561071f57600080fd5b506102ac611903565b600061073382611ad5565b92915050565b6060610743611b23565b600201805461075190612eae565b80601f016020809104026020016040519081016040528092919081815260200182805461077d90612eae565b80156107ca5780601f1061079f576101008083540402835291602001916107ca565b820191906000526020600020905b8154815290600101906020018083116107ad57829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061080e5761080e612ee2565b90600052602060002090600602016003015461082a9190612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b15801561089757600080fd5b505af11580156108ab573d6000803e3d6000fd5b505050506108be8b8b8b87878787611b47565b5050505050505050505050565b60006108d682611db0565b6108f3576040516333d1c03960e21b815260040160405180910390fd5b6108fb611b23565b60009283526006016020525060409020546001600160a01b031690565b61092482826001611df9565b5050565b610930611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa15801561098a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ae9190612f25565b90925090506001600160a01b0382166109da57604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a479190612f53565b90506000612710610a588484612f0e565b610a629190612f6c565b90506000610a708284612f8e565b90508015610b125760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610acc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af09190612fa1565b905080610b1057604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb85760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b969190612fa1565b905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610bcb611b23565b60010154610bd7611b23565b540303919050565b6000610bea82611f08565b9050836001600160a01b0316816001600160a01b031614610c1d5760405162a1148160e81b815260040160405180910390fd5b600080610c2984611fb5565b91509150610c4e8187610c393390565b6001600160a01b039081169116811491141790565b610c7957610c5c863361184d565b610c7957604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610ca057604051633a954ecd60e21b815260040160405180910390fd5b610cad8686866001611fdd565b8015610cb857600082555b610cc0611b23565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610cec611b23565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d23611b23565b60008681526004919091016020526040812091909155600160e11b84169003610d995760018401610d52611b23565b600082815260049190910160205260408120549003610d9757610d73611b23565b548114610d975783610d83611b23565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610bb6565b606d8181548110610def57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b60008051602061343283398151915254610100900460ff16610e5d576000805160206134328339815191525460ff1615610e61565b303b155b610ed85760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b60008051602061343283398151915254610100900460ff16158015610f1457600080516020613432833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f345750600054600160ff909116105b80610f4e5750303b158015610f4e575060005460ff166001145b610fb15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610ecf565b6000805460ff191660011790558015610fd4576000805461ff0019166101001790555b610fed8360405180602001604052806000815250612064565b610ff56120a2565b610ffe876120d1565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a16929091169190911790558015611093576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610bb6575050600080516020613432833981519152805461ff001916905550505050565b6110d583838360405180602001604052806000815250611503565b505050565b6110e987878787878787611b47565b50505050505050565b6110fa611eae565b606c6110d5828483613004565b600061073382611f08565b61111a611eae565b606b55565b60006001600160a01b038216611148576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611158611b23565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61118f611eae565b61119960006120d1565b565b6111a3611eae565b6110e987878787878787612123565b6060606a546000146111eb576111c9606a54612266565b6040516020016111d991906130c3565b60405160208183030381529060405290505b90565b6111f6611eae565b6069546001600160a01b039081169083160361122557604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611272573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d59190612fa1565b8061129f611b23565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61131b611eae565b606d541561132f5761132f606d600061280a565b600081815b818110156114c957600085858381811061135057611350612ee2565b905060c0020180360381019061136691906130ed565b9050838160000151108061137e575060208101518151115b1561139c57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506114c28161316c565b9050611334565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b61150e848484610bdf565b6001600160a01b0383163b156115475761152a848484846122f8565b611547576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061155882611db0565b61157557604051632627b42d60e11b815260040160405180910390fd5b600061157f6123e3565b905080516000036115a1576040518060200160405280600081525091506116a2565b60408051600180825281830190925260009160208201818036833701905050905081600183516115d19190612f8e565b815181106115e1576115e1612ee2565b602001015160f81c60f81b816000815181106115ff576115ff612ee2565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161164f9190613185565b604051602081830303815290604052805190602001200361169b5782611674866123f2565b6040516020016116859291906131a1565b604051602081830303815290604052935061169f565b8293505b50505b50919050565b606a546000036116cb576040516316812a5360e11b815260040160405180910390fd5b6116d6878383612436565b6116df86612496565b6116fc576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061171157611711612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820181905290915061180a576066546040516332f1944960e21b81526001600160a01b039091169063cbc65124906117ac908b9030908c908b908b906004016131f9565b602060405180830381865afa1580156117c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ed9190612fa1565b61180a576040516352c973a760e01b815260040160405180910390fd5b85816040015161181a9190612f0e565b3414611839576040516318f4198360e21b815260040160405180910390fd5b6118438887612547565b5050505050505050565b6000611857611b23565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b611892611eae565b6001600160a01b0381166118f75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610ecf565b611900816120d1565b50565b61190b611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611965573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119899190612f25565b90925090506001600160a01b0382166119b557604051632627b42d60e11b815260040160405180910390fd5b4760006127106119c58484612f0e565b6119cf9190612f6c565b905060006119dd8284612f8e565b90508015611a5b576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611a32576040519150601f19603f3d011682016040523d82523d6000602084013e611a37565b606091505b5050905080611a5957604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb8576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611aae576040519150601f19603f3d011682016040523d82523d6000602084013e611ab3565b606091505b5050905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611b0657506380ac58cd60e01b6001600160e01b03198316145b806107335750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611b52878383612436565b6069546001600160a01b0316611b7b57604051632d1f608d60e11b815260040160405180910390fd5b611b8486612496565b611ba1576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611bb657611bb6612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a08201819052909150611caf576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611c51908b9030908c908b908b906004016131f9565b602060405180830381865afa158015611c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c929190612fa1565b611caf576040516352c973a760e01b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611cd8908b90612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611d2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d509190612fa1565b611d6d57604051635b88974760e11b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a845290915281208054889290611da0908490613238565b9091555061184390508887612547565b600081600111158015611dca5750611dc6611b23565b5482105b80156107335750600160e01b611dde611b23565b60008481526004919091016020526040902054161592915050565b6000611e0483611107565b90508115611e4357336001600160a01b03821614611e4357611e26813361184d565b611e43576040516367d9dca160e11b815260040160405180910390fd5b83611e4c611b23565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146111995760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610ecf565b600081600111611f9c57611f1a611b23565b600083815260049190910160205260408120549150600160e01b82169003611f9c5780600003611f9757611f4c611b23565b548210611f6c57604051636f96cda160e11b815260040160405180910390fd5b611f74611b23565b600019909201600081815260049390930160205260409092205490508015611f6c575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611fc2611b23565b60009485526006016020525050604090912080549092909150565b606b541561154757606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b15801561205057600080fd5b505af1158015611843573d6000803e3d6000fd5b60008051602061343283398151915254610100900460ff166120985760405162461bcd60e51b8152600401610ecf9061324b565b610924828261268f565b600054610100900460ff166120c95760405162461bcd60e51b8152600401610ecf9061329f565b611199612702565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a5415612144576040516302d1671b60e41b815260040160405180910390fd5b8615801561215a57506001600160a01b03841615155b8061217657506001600160a01b03841615801561217657508615155b1561219457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af11580156121f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122159190612f53565b606a556001600160a01b0383161561224357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c612255828483613004565b5085156110e9576110e98587612547565b6060600061227383612732565b60010190506000816001600160401b0381111561229257612292612ab2565b6040519080825280601f01601f1916602001820160405280156122bc576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846122c657509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a029061232d9033908990889088906004016132ea565b6020604051808303816000875af1925050508015612368575060408051601f3d908101601f1916820190925261236591810190613327565b60015b6123c6573d808015612396576040519150601f19603f3d011682016040523d82523d6000602084013e61239b565b606091505b5080516000036123be576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461075190612eae565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a90048061240c5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061246a90869086908690600401613344565b60006040518083038186803b15801561248257600080fd5b505afa1580156110e9573d6000803e3d6000fd5b606d5460009082106124bb57604051632627b42d60e11b815260040160405180910390fd5b6000606d83815481106124d0576124d0612ee2565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906125405750428160200151115b9392505050565b6000612551611b23565b54905060008290036125765760405163b562e8dd60e01b815260040160405180910390fd5b6125836000848385611fdd565b680100000000000000018202612597611b23565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b17176125d2611b23565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b81811461265c57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101612624565b508160000361267d57604051622e076360e81b815260040160405180910390fd5b80612686611b23565b55506110d59050565b60008051602061343283398151915254610100900460ff166126c35760405162461bcd60e51b8152600401610ecf9061324b565b816126cc611b23565b600201906126da9082613372565b50806126e4611b23565b600301906126f29082613372565b5060016126fd611b23565b555050565b600054610100900460ff166127295760405162461bcd60e51b8152600401610ecf9061329f565b611199336120d1565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106127715772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061279d576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106127bb57662386f26fc10000830492506010015b6305f5e10083106127d3576305f5e100830492506008015b61271083106127e757612710830492506004015b606483106127f9576064830492506002015b600a83106107335760010192915050565b508054600082556006029060005260206000209081019061190091905b80821115612862576000808255600182018190556002820181905560038201819055600482015560058101805460ff19169055600601612827565b5090565b6001600160e01b03198116811461190057600080fd5b60006020828403121561288e57600080fd5b813561254081612866565b60005b838110156128b457818101518382015260200161289c565b50506000910152565b600081518084526128d5816020860160208601612899565b601f01601f19169290920160200192915050565b60208152600061254060208301846128bd565b6001600160a01b038116811461190057600080fd5b60008083601f84011261292357600080fd5b5081356001600160401b0381111561293a57600080fd5b60208301915083602082850101111561295257600080fd5b9250929050565b60008060008060008060008060008060006101208c8e03121561297b57600080fd5b6129858c356128fc565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff811681146129b257600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d01358110156129db57600080fd5b6129eb8e60e08f01358f01612911565b90955093506101008d0135811015612a0257600080fd5b50612a148d6101008e01358e01612911565b81935080925050509295989b509295989b9093969950565b600060208284031215612a3e57600080fd5b5035919050565b60008060408385031215612a5857600080fd5b8235612a63816128fc565b946020939093013593505050565b600080600060608486031215612a8657600080fd5b8335612a91816128fc565b92506020840135612aa1816128fc565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612ae257612ae2612ab2565b604051601f8501601f19908116603f01168101908282118183101715612b0a57612b0a612ab2565b81604052809350858152868686011115612b2357600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612b5557600080fd5b8535612b60816128fc565b94506020860135612b70816128fc565b93506040860135612b80816128fc565b92506060860135612b90816128fc565b915060808601356001600160401b03811115612bab57600080fd5b8601601f81018813612bbc57600080fd5b612bcb88823560208401612ac8565b9150509295509295909350565b600080600080600080600060a0888a031215612bf357600080fd5b8735612bfe816128fc565b9650602088013595506040880135945060608801356001600160401b0380821115612c2857600080fd5b612c348b838c01612911565b909650945060808a0135915080821115612c4d57600080fd5b50612c5a8a828b01612911565b989b979a50959850939692959293505050565b60008060208385031215612c8057600080fd5b82356001600160401b03811115612c9657600080fd5b612ca285828601612911565b90969095509350505050565b600060208284031215612cc057600080fd5b8135612540816128fc565b600080600080600080600060c0888a031215612ce657600080fd5b87359650602088013595506040880135612cff816128fc565b94506060880135612d0f816128fc565b93506080880135612d1f816128fc565b925060a08801356001600160401b03811115612d3a57600080fd5b612c5a8a828b01612911565b801515811461190057600080fd5b60008060408385031215612d6757600080fd5b8235612d72816128fc565b91506020830135612d8281612d46565b809150509250929050565b60008060208385031215612da057600080fd5b82356001600160401b0380821115612db757600080fd5b818501915085601f830112612dcb57600080fd5b813581811115612dda57600080fd5b86602060c083028501011115612def57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612e1757600080fd5b8435612e22816128fc565b93506020850135612e32816128fc565b92506040850135915060608501356001600160401b03811115612e5457600080fd5b8501601f81018713612e6557600080fd5b612e7487823560208401612ac8565b91505092959194509250565b60008060408385031215612e9357600080fd5b8235612e9e816128fc565b91506020830135612d82816128fc565b600181811c90821680612ec257607f821691505b6020821081036116a257634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761073357610733612ef8565b60008060408385031215612f3857600080fd5b8251612f43816128fc565b6020939093015192949293505050565b600060208284031215612f6557600080fd5b5051919050565b600082612f8957634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561073357610733612ef8565b600060208284031215612fb357600080fd5b815161254081612d46565b601f8211156110d557600081815260208120601f850160051c81016020861015612fe55750805b601f850160051c820191505b81811015610bb657828155600101612ff1565b6001600160401b0383111561301b5761301b612ab2565b61302f836130298354612eae565b83612fbe565b6000601f841160018114613063576000851561304b5750838201355b600019600387901b1c1916600186901b178355610bb8565b600083815260209020601f19861690835b828110156130945786850135825560209485019460019092019101613074565b50868210156130b15760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b8152600082516130e0816002850160208701612899565b9190910160020192915050565b600060c082840312156130ff57600080fd5b60405160c081018181106001600160401b038211171561312157613121612ab2565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561316081612d46565b60a08201529392505050565b60006001820161317e5761317e612ef8565b5060010190565b60008251613197818460208701612899565b9190910192915050565b600083516131b3818460208801612899565b8351908301906131c7818360208801612899565b01949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b038681168252851660208201526040810184905260806060820181905260009061322d90830184866131d0565b979650505050505050565b8082018082111561073357610733612ef8565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061331d908301846128bd565b9695505050505050565b60006020828403121561333957600080fd5b815161254081612866565b6001600160a01b038416815260406020820181905260009061336990830184866131d0565b95945050505050565b81516001600160401b0381111561338b5761338b612ab2565b61339f816133998454612eae565b84612fbe565b602080601f8311600181146133d457600084156133bc5750858301515b600019600386901b1c1916600185901b178555610bb6565b600085815260208120601f198616915b82811015613403578886015182559484019460019091019084016133e4565b50858210156134215787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220cafa3a7f682c36f07e8cad71c42b1c0e02beaeddb35d76fd32ad310217ab076964736f6c63430008130033", + "nonce": "0x7b", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xa9e4de9145777a32b211c8613f5a993f28b55fc3bef000f8c55f892fe64d3cfe", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0x2375172Ed700d254928784CaFc9C647e94FDb776", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x1f76b5", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611b41806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106102115760003560e01c80637d2405bb11610125578063b7dd8d20116100ad578063d547741f1161007c578063d547741f14610494578063d57f966b146104a7578063d8f4b6fd146104b0578063f339b08e146104c5578063fdbda0ec146104d857600080fd5b8063b7dd8d2014610446578063ba4f11c914610459578063bdd2fe781461046c578063cfc5a0c01461047f57600080fd5b80638e837abf116100f45780638e837abf146103f257806391d148541461040557806398eaa0c0146104185780639f1fb80d1461042b578063a217fddf1461043e57600080fd5b80637d2405bb146103a6578063832ca2f5146103b957806385be1c15146103cc5780638d058ac8146103df57600080fd5b806336568abe116101a85780634eb6b7f6116101775780634eb6b7f614610347578063641254bd1461035a578063678213491461036d5780636b7e3949146103805780636cc82b841461039357600080fd5b806336568abe146102fb5780634128541c1461030e57806347fcac3b146103215780634c7dfac31461033457600080fd5b80631ce6e444116101e45780631ce6e444146102915780631e5b3684146102a4578063248a9ca3146102b75780632f2ff15d146102e857600080fd5b806301ffc9a7146102165780631459457a1461023e57806318c25d8a146102535780631c8518c214610266575b600080fd5b61022961022436600461161d565b61050b565b60405190151581526020015b60405180910390f35b61025161024c36600461165e565b610542565b005b6102516102613660046116c3565b6106c3565b609b54610279906001600160a01b031681565b6040516001600160a01b039091168152602001610235565b609a54610279906001600160a01b031681565b6102516102b23660046116ed565b61083d565b6102da6102c53660046116ed565b60009081526065602052604090206001015490565b604051908152602001610235565b6102516102f6366004611706565b6108ef565b610251610309366004611706565b610914565b609854610279906001600160a01b031681565b61027961032f3660046116c3565b610992565b610229610342366004611732565b6109a6565b609e54610279906001600160a01b031681565b610251610368366004611732565b6109c0565b61025161037b36600461174d565b6109ee565b61025161038e366004611732565b610ad6565b609954610279906001600160a01b031681565b6102516103b4366004611732565b610b06565b6102516103c7366004611732565b610b34565b6102516103da366004611706565b610b62565b6102796103ed3660046116ed565b610be8565b610251610400366004611732565b610c02565b610229610413366004611706565b610c30565b610279610426366004611789565b610c5b565b61025161043936600461184e565b610c8f565b6102da600081565b6102516104543660046118b4565b610dc0565b6102da610467366004611732565b610e94565b609c54610279906001600160a01b031681565b6102da600080516020611acc83398151915281565b6102516104a2366004611706565b610f32565b6102da609d5481565b6102da600080516020611aec83398151915281565b6102796104d33660046116ed565b610f57565b6104eb6104e63660046116ed565b610f81565b604080516001600160a01b03938416815292909116602083015201610235565b60006001600160e01b03198216637965db0b60e01b148061053c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156105625750600054600160ff909116105b8061057c5750303b15801561057c575060005460ff166001145b6105e45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610607576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d5561066a610fba565b610675600033611027565b80156106bb576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b600080516020611acc8339815191526106db81611031565b6127108211156106fe57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661072557604051632627b42d60e11b815260040160405180910390fd5b609c5460009061073d906001600160a01b031661103e565b609854609e5460405163c0c53b8b60e01b81526001600160a01b0388811660048301529283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561079957600080fd5b505af11580156107ad573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b9199150606401600060405180830381600087803b15801561080757600080fd5b505af115801561081b573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856110d8565b50505050565b600080516020611aec83398151915261085581611031565b609b5460009061086e906001600160a01b03168461115e565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b1580156108c857600080fd5b505af11580156108dc573d6000803e3d6000fd5b505050506108ea81336111fb565b505050565b60008281526065602052604090206001015461090a81611031565b6108ea83836110d8565b6001600160a01b03811633146109845760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016105db565b61098e8282611353565b5050565b600061099f8383306113ba565b9392505050565b600061053c600080516020611aec83398151915283610c30565b60006109cb81611031565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b600080516020611acc833981519152610a0681611031565b612710821115610a2957604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b038416610a5057604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b91990606401600060405180830381600087803b158015610aa657600080fd5b505af1158015610aba573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856108ef565b600080516020611acc833981519152610aee81611031565b61098e600080516020611aec83398151915283610f32565b6000610b1181611031565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b3f81611031565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b6d81611031565b81609f8481548110610b8157610b81611904565b60009182526020918290200180546001600160a01b0319166001600160a01b0393841617905560408051868152928516918301919091527f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a1505050565b609b5460009061053c906001600160a01b031683306113ba565b6000610c0d81611031565b50609e80546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600061099f609f8481548110610c7357610c73611904565b6000918252602090912001546001600160a01b031683306113ba565b600080516020611acc833981519152610ca781611031565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610cf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d15919061191a565b610d3257604051634f3bd42760e01b815260040160405180910390fd5b6000610d3e868461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610d84948c9491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610d9e57600080fd5b505af1158015610db2573d6000803e3d6000fd5b505050506106bb81866111fb565b600080516020611aec833981519152610dd881611031565b6000610e0b609f8681548110610df057610df0611904565b6000918252602090912001546001600160a01b03168461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610e5194339491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610e6b57600080fd5b505af1158015610e7f573d6000803e3d6000fd5b50505050610e8d81336111fb565b5050505050565b600080610ea081611031565b609f80546001810182556000919091527f0bc14066c33013fe88f66e314e4cf150b0b2d4d6451a1a51dbbd1c27cd11de28810180546001600160a01b0319166001600160a01b0386169081179091556040805183815260208101929092529193507f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a150919050565b600082815260656020526040902060010154610f4d81611031565b6108ea8383611353565b609f8181548110610f6757600080fd5b6000918252602090912001546001600160a01b0316905081565b60978181548110610f9157600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff166110255760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016105db565b565b61098e82826110d8565b61103b8133611416565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b0381166110d35760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b60448201526064016105db565b919050565b6110e28282610c30565b61098e5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561111a3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b03811661053c5760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c656400000000000000000060448201526064016105db565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c906112d19085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b1580156112eb57600080fd5b505af11580156112ff573d6000803e3d6000fd5b50505050609d60008154611312906119e9565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b61135d8282610c30565b1561098e5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6114208282610c30565b61098e5761142d8161146f565b611438836020611481565b604051602001611449929190611a02565b60408051601f198184030181529082905262461bcd60e51b82526105db91600401611a77565b606061053c6001600160a01b03831660145b60606000611490836002611a8a565b61149b906002611aa1565b67ffffffffffffffff8111156114b3576114b36117ab565b6040519080825280601f01601f1916602001820160405280156114dd576020820181803683370190505b509050600360fc1b816000815181106114f8576114f8611904565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061152757611527611904565b60200101906001600160f81b031916908160001a905350600061154b846002611a8a565b611556906001611aa1565b90505b60018111156115ce576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061158a5761158a611904565b1a60f81b8282815181106115a0576115a0611904565b60200101906001600160f81b031916908160001a90535060049490941c936115c781611ab4565b9050611559565b50831561099f5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016105db565b60006020828403121561162f57600080fd5b81356001600160e01b03198116811461099f57600080fd5b80356001600160a01b03811681146110d357600080fd5b600080600080600060a0868803121561167657600080fd5b61167f86611647565b945061168d60208701611647565b935061169b60408701611647565b92506116a960608701611647565b91506116b760808701611647565b90509295509295909350565b600080604083850312156116d657600080fd5b6116df83611647565b946020939093013593505050565b6000602082840312156116ff57600080fd5b5035919050565b6000806040838503121561171957600080fd5b8235915061172960208401611647565b90509250929050565b60006020828403121561174457600080fd5b61099f82611647565b60008060006060848603121561176257600080fd5b61176b84611647565b925061177960208501611647565b9150604084013590509250925092565b6000806040838503121561179c57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126117d257600080fd5b813567ffffffffffffffff808211156117ed576117ed6117ab565b604051601f8301601f19908116603f01168101908282118183101715611815576118156117ab565b8160405283815286602085880101111561182e57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561186457600080fd5b61186d85611647565b935061187b60208601611647565b9250604085013567ffffffffffffffff81111561189757600080fd5b6118a3878288016117c1565b949793965093946060013593505050565b6000806000606084860312156118c957600080fd5b83359250602084013567ffffffffffffffff8111156118e757600080fd5b6118f3868287016117c1565b925050604084013590509250925092565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561192c57600080fd5b8151801515811461099f57600080fd5b60005b8381101561195757818101518382015260200161193f565b50506000910152565b6000815180845261197881602086016020860161193c565b601f01601f19169290920160200192915050565b6001600160a01b038681168252858116602083015284811660408301528316606082015260a0608082018190526000906119c890830184611960565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016119fb576119fb6119d3565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611a3a81601785016020880161193c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611a6b81602884016020880161193c565b01602801949350505050565b60208152600061099f6020830184611960565b808202811582820484141761053c5761053c6119d3565b8082018082111561053c5761053c6119d3565b600081611ac357611ac36119d3565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220906cbaa757902a4ee379e641d3c2abcc38d848ac202ab2a5a6f4bef0d176c88c64736f6c63430008130033", + "nonce": "0x7c", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0x27a3a89a8803b9be85659957a47d161c0cd459a98524f62934ffd06bab1abdb6", + "transactionIndex": "0x6", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x1188ee", + "gasUsed": "0xbaf26", + "contractAddress": "0xdC8B3030E54e88F08Ca01B842448fdcE9b511CdB", + "logs": [ + { + "address": "0xdC8B3030E54e88F08Ca01B842448fdcE9b511CdB", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x27a3a89a8803b9be85659957a47d161c0cd459a98524f62934ffd06bab1abdb6", + "transactionIndex": "0x6", + "logIndex": "0x6", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + }, + { + "transactionHash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionIndex": "0x7", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x1b6e70", + "gasUsed": "0x9e582", + "contractAddress": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "logs": [ + { + "address": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "topics": [ + "0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", + "0x000000000000000000000000dc8b3030e54e88f08ca01b842448fdce9b511cdb" + ], + "data": "0x", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionIndex": "0x7", + "logIndex": "0x7", + "removed": false + }, + { + "address": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000002bbc44d4449e947d3612c2b16147d9206eaed990", + "0x0000000000000000000000002bbc44d4449e947d3612c2b16147d9206eaed990" + ], + "data": "0x", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionIndex": "0x7", + "logIndex": "0x8", + "removed": false + }, + { + "address": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionIndex": "0x7", + "logIndex": "0x9", + "removed": false + }, + { + "address": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "topics": [ + "0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000003934000d33f8b4df78ba0d3cdfa61e620580822c", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionIndex": "0x7", + "logIndex": "0xa", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000004000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000002000000000000000000000000000000000020000000020000000000000000800800000040800000000000000800000000000000000000000000000000000000040000000000000080000000000000800000002000000000000000000000000400000000000000000000001000000000000000000020800000000000000000040000000000000400000100000080000020000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + }, + { + "transactionHash": "0x7b2fed735f4906d188df5cdece043a45ef7071f49df64b204b3c450f07c6aae1", + "transactionIndex": "0x8", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x3dca22", + "gasUsed": "0x225bb2", + "contractAddress": "0x65B7B3f5c5b01f06D3D5545d72e6962AD664F999", + "logs": [ + { + "address": "0x65B7B3f5c5b01f06D3D5545d72e6962AD664F999", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x7b2fed735f4906d188df5cdece043a45ef7071f49df64b204b3c450f07c6aae1", + "transactionIndex": "0x8", + "logIndex": "0xb", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000800000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + }, + { + "transactionHash": "0xc28eb86e2b16cf9a9e0d2895ab823e10e3c7d636c04d00cbe3bb281adcdeb6b3", + "transactionIndex": "0x9", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x6cc8b4", + "gasUsed": "0x2efe92", + "contractAddress": "0x16d48a7B9D48C0a1ec51DcCB9AACa3a9317bd78C", + "logs": [ + { + "address": "0x16d48a7B9D48C0a1ec51DcCB9AACa3a9317bd78C", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0xc28eb86e2b16cf9a9e0d2895ab823e10e3c7d636c04d00cbe3bb281adcdeb6b3", + "transactionIndex": "0x9", + "logIndex": "0xc", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000020000001000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + }, + { + "transactionHash": "0x1c4ddc83ae8554a8877368d5090e660be65fdc65cebd3abf173721263322dadc", + "transactionIndex": "0xa", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x9a4dbf", + "gasUsed": "0x2d850b", + "contractAddress": "0xD0aA9747B3BA7418456d58e5e1D21aB8F2ba4f87", + "logs": [ + { + "address": "0xD0aA9747B3BA7418456d58e5e1D21aB8F2ba4f87", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x1c4ddc83ae8554a8877368d5090e660be65fdc65cebd3abf173721263322dadc", + "transactionIndex": "0xa", + "logIndex": "0xd", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000001000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + }, + { + "transactionHash": "0xa9e4de9145777a32b211c8613f5a993f28b55fc3bef000f8c55f892fe64d3cfe", + "transactionIndex": "0x7", + "blockHash": "0xf8a910a3804350fa674790ef6fdf66ee43183fe802b473b3cc6721e16f3c22b0", + "blockNumber": "0x8a1fc1", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x267233", + "gasUsed": "0x1833ee", + "contractAddress": "0x2375172Ed700d254928784CaFc9C647e94FDb776", + "logs": [ + { + "address": "0x2375172Ed700d254928784CaFc9C647e94FDb776", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xf8a910a3804350fa674790ef6fdf66ee43183fe802b473b3cc6721e16f3c22b0", + "blockNumber": "0x8a1fc1", + "transactionHash": "0xa9e4de9145777a32b211c8613f5a993f28b55fc3bef000f8c55f892fe64d3cfe", + "transactionIndex": "0x7", + "logIndex": "0xe", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1704893543, + "chain": 8453, + "multi": false, + "commit": "9d351c5" +} \ No newline at end of file diff --git a/broadcast/deploy-v1_2.s.sol/8453/run-latest.json b/broadcast/deploy-v1_2.s.sol/8453/run-latest.json new file mode 100644 index 0000000..eb342be --- /dev/null +++ b/broadcast/deploy-v1_2.s.sol/8453/run-latest.json @@ -0,0 +1,354 @@ +{ + "transactions": [ + { + "hash": "0x27a3a89a8803b9be85659957a47d161c0cd459a98524f62934ffd06bab1abdb6", + "transactionType": "CREATE", + "contractName": "ABKYCModule", + "contractAddress": "0xdC8B3030E54e88F08Ca01B842448fdcE9b511CdB", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0xf307e", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b610c68806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063627cdcb9116100a2578063ccac2c1311610071578063ccac2c131461022b578063cfc5a0c01461023e578063d547741f14610265578063e83931af14610278578063f2c526bc1461016357600080fd5b8063627cdcb9146101f557806391d14854146101fd578063a217fddf14610210578063c4d66de81461021857600080fd5b80632f2ff15d116100de5780632f2ff15d146101a957806336568abe146101bc578063437a0de9146101cf5780634a96535b146101e257600080fd5b806301ffc9a7146101105780631180b553146101385780631723576414610163578063248a9ca314610178575b600080fd5b61012361011e366004610977565b610289565b60405190151581526020015b60405180910390f35b61014b6101463660046109bd565b6102c0565b6040516001600160a01b03909116815260200161012f565b6101766101713660046109d8565b505050565b005b61019b610186366004610a5b565b60009081526065602052604090206001015490565b60405190815260200161012f565b6101766101b7366004610a74565b6102cb565b6101766101ca366004610a74565b6102f0565b60975461014b906001600160a01b031681565b6101766101f03660046109bd565b610373565b6101766103a1565b61012361020b366004610a74565b6103c2565b61019b600081565b6101766102263660046109bd565b6103ed565b610176610239366004610aa0565b61054b565b61019b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e81565b610176610273366004610a74565b6105a4565b6101766102863660046109bd565b50565b60006001600160e01b03198216637965db0b60e01b14806102ba57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006102ba826105c9565b6000828152606560205260409020600101546102e6816105fb565b6101718383610605565b6001600160a01b03811633146103655760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61036f828261068b565b5050565b600061037e816105fb565b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b60006103ac816105fb565b6099600081546103bb90610ae0565b9091555050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600054610100900460ff161580801561040d5750600054600160ff909116105b806104275750303b158015610427575060005460ff166001145b61048a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161035c565b6000805460ff1916600117905580156104ad576000805461ff0019166101001790555b6001600160a01b0382166104d457604051632627b42d60e11b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b0384161790556104f76106f2565b61050260003361075f565b801561036f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b7f2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e610575816105fb565b506001600160a01b03918216600090815260986020526040902080546001600160a01b03191691909216179055565b6000828152606560205260409020600101546105bf816105fb565b610171838361068b565b6097546001600160a01b03828116600090815260986020526040902054918116911680156105f5578091505b50919050565b6102868133610769565b61060f82826103c2565b61036f5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556106473390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61069582826103c2565b1561036f5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600054610100900460ff1661075d5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161035c565b565b61036f8282610605565b61077382826103c2565b61036f57610780816107c2565b61078b8360206107d4565b60405160200161079c929190610b1d565b60408051601f198184030181529082905262461bcd60e51b825261035c91600401610b92565b60606102ba6001600160a01b03831660145b606060006107e3836002610bc5565b6107ee906002610bdc565b67ffffffffffffffff81111561080657610806610bef565b6040519080825280601f01601f191660200182016040528015610830576020820181803683370190505b509050600360fc1b8160008151811061084b5761084b610c05565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061087a5761087a610c05565b60200101906001600160f81b031916908160001a905350600061089e846002610bc5565b6108a9906001610bdc565b90505b6001811115610921576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106108dd576108dd610c05565b1a60f81b8282815181106108f3576108f3610c05565b60200101906001600160f81b031916908160001a90535060049490941c9361091a81610c1b565b90506108ac565b5083156109705760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161035c565b9392505050565b60006020828403121561098957600080fd5b81356001600160e01b03198116811461097057600080fd5b80356001600160a01b03811681146109b857600080fd5b919050565b6000602082840312156109cf57600080fd5b610970826109a1565b6000806000604084860312156109ed57600080fd5b6109f6846109a1565b9250602084013567ffffffffffffffff80821115610a1357600080fd5b818601915086601f830112610a2757600080fd5b813581811115610a3657600080fd5b876020828501011115610a4857600080fd5b6020830194508093505050509250925092565b600060208284031215610a6d57600080fd5b5035919050565b60008060408385031215610a8757600080fd5b82359150610a97602084016109a1565b90509250929050565b60008060408385031215610ab357600080fd5b610abc836109a1565b9150610a97602084016109a1565b634e487b7160e01b600052601160045260246000fd5b600060018201610af257610af2610aca565b5060010190565b60005b83811015610b14578181015183820152602001610afc565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351610b55816017850160208801610af9565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351610b86816028840160208801610af9565b01602801949350505050565b6020815260008251806020840152610bb1816040850160208701610af9565b601f01601f19169190910160400192915050565b80820281158282048414176102ba576102ba610aca565b808201808211156102ba576102ba610aca565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081610c2a57610c2a610aca565b50600019019056fea26469706673582212208d91efe3e0bad5f5e8fd18795d05e2647d4c6c39a1fa25642cadbe390e30f32a64736f6c63430008130033", + "nonce": "0x77", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionType": "CREATE", + "contractName": "TransparentUpgradeableProxy", + "contractAddress": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "function": null, + "arguments": [ + "0xdC8B3030E54e88F08Ca01B842448fdcE9b511CdB", + "0x3934000d33f8B4df78BA0D3cDfa61e620580822c", + "0xc4d66de80000000000000000000000002bbc44d4449e947d3612c2b16147d9206eaed990" + ], + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0xcdd8f", + "value": "0x0", + "data": "0x608060405260405162000dcf38038062000dcf833981016040819052620000269162000424565b828162000036828260006200004d565b50620000449050826200007f565b50505062000557565b6200005883620000f1565b600082511180620000665750805b156200007a5762000078838362000133565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000c160008051602062000d88833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000ee8162000162565b50565b620000fc8162000200565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200015b838360405180606001604052806027815260200162000da86027913962000297565b9392505050565b6001600160a01b038116620001cd5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b8060008051602062000d888339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6200026f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001c4565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc620001df565b6060600080856001600160a01b031685604051620002b6919062000504565b600060405180830381855af49150503d8060008114620002f3576040519150601f19603f3d011682016040523d82523d6000602084013e620002f8565b606091505b5090925090506200030c8683838762000316565b9695505050505050565b606083156200038a57825160000362000382576001600160a01b0385163b620003825760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001c4565b508162000396565b6200039683836200039e565b949350505050565b815115620003af5781518083602001fd5b8060405162461bcd60e51b8152600401620001c4919062000522565b80516001600160a01b0381168114620003e357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200041b57818101518382015260200162000401565b50506000910152565b6000806000606084860312156200043a57600080fd5b6200044584620003cb565b92506200045560208501620003cb565b60408501519092506001600160401b03808211156200047357600080fd5b818601915086601f8301126200048857600080fd5b8151818111156200049d576200049d620003e8565b604051601f8201601f19908116603f01168101908382118183101715620004c857620004c8620003e8565b81604052828152896020848701011115620004e257600080fd5b620004f5836020830160208801620003fe565b80955050505050509250925092565b6000825162000518818460208701620003fe565b9190910192915050565b602081526000825180602084015262000543816040850160208701620003fe565b601f01601f19169190910160400192915050565b61082180620005676000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106b3565b610118565b61005b6100933660046106ce565b610155565b3480156100a457600080fd5b506100ad6101bc565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106b3565b6101ed565b3480156100f557600080fd5b506100ad61020d565b61010661022e565b6101166101116102c3565b6102cd565b565b6101206102f1565b6001600160a01b0316330361014d5761014a81604051806020016040528060008152506000610324565b50565b61014a6100fe565b61015d6102f1565b6001600160a01b031633036101b4576101af8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610324915050565b505050565b6101af6100fe565b60006101c66102f1565b6001600160a01b031633036101e2576101dd6102c3565b905090565b6101ea6100fe565b90565b6101f56102f1565b6001600160a01b0316330361014d5761014a8161034f565b60006102176102f1565b6001600160a01b031633036101e2576101dd6102f1565b6102366102f1565b6001600160a01b031633036101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101dd6103a3565b3660008037600080366000845af43d6000803e8080156102ec573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b61032d836103cb565b60008251118061033a5750805b156101af57610349838361040b565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103786102f1565b604080516001600160a01b03928316815291841660208301520160405180910390a161014a81610437565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610315565b6103d4816104e0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061043083836040518060600160405280602781526020016107c560279139610574565b9392505050565b6001600160a01b03811661049c5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ba565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b61054d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102ba565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6104bf565b6060600080856001600160a01b0316856040516105919190610775565b600060405180830381855af49150503d80600081146105cc576040519150601f19603f3d011682016040523d82523d6000602084013e6105d1565b606091505b50915091506105e2868383876105ec565b9695505050505050565b6060831561065b578251600003610654576001600160a01b0385163b6106545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016102ba565b5081610665565b610665838361066d565b949350505050565b81511561067d5781518083602001fd5b8060405162461bcd60e51b81526004016102ba9190610791565b80356001600160a01b03811681146106ae57600080fd5b919050565b6000602082840312156106c557600080fd5b61043082610697565b6000806000604084860312156106e357600080fd5b6106ec84610697565b9250602084013567ffffffffffffffff8082111561070957600080fd5b818601915086601f83011261071d57600080fd5b81358181111561072c57600080fd5b87602082850101111561073e57600080fd5b6020830194508093505050509250925092565b60005b8381101561076c578181015183820152602001610754565b50506000910152565b60008251610787818460208701610751565b9190910192915050565b60208152600082518060208401526107b0816040850160208701610751565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122027bb32bdabd86208be11b9ccb5c5f1a473bdb5213dea3f6d98324022f2029b1464736f6c63430008130033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564000000000000000000000000dc8b3030e54e88f08ca01b842448fdce9b511cdb0000000000000000000000003934000d33f8b4df78ba0d3cdfa61e620580822c00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de80000000000000000000000002bbc44d4449e947d3612c2b16147d9206eaed99000000000000000000000000000000000000000000000000000000000", + "nonce": "0x78", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x7b2fed735f4906d188df5cdece043a45ef7071f49df64b204b3c450f07c6aae1", + "transactionType": "CREATE", + "contractName": "ABRoyalty", + "contractAddress": "0x65B7B3f5c5b01f06D3D5545d72e6962AD664F999", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x2caa67", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61274b80620000f46000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806378c5195e11610104578063b08805a5116100a2578063d518b7ff11610071578063d518b7ff14610470578063d547741f14610483578063df3d053b14610496578063f8372320146104a957600080fd5b8063b08805a5146103f8578063b81155b51461040b578063c0c53b8b14610448578063cfc5a0c01461045b57600080fd5b806391d14854116100de57806391d14854146103a15780639ab29f2b146103b4578063a217fddf146103c7578063a626f573146103cf57600080fd5b806378c5195e146103685780638c72c54e1461037b5780638fd1101c1461038e57600080fd5b806336568abe1161017c5780634e4345921161014b5780634e434592146103155780634eb6b7f6146103285780636ce10ab61461033b578063754b377c1461034e57600080fd5b806336568abe146102c757806342f1e879146102da578063482a61ff146102ef5780634acdd3581461030257600080fd5b80631c44eb4f116101b85780631c44eb4f1461022f5780631d3b405a14610242578063248a9ca3146102835780632f2ff15d146102b457600080fd5b806301ffc9a7146101df57806319c0fab9146102075780631bfb1bb81461021c575b600080fd5b6101f26101ed366004611c44565b6104b2565b60405190151581526020015b60405180910390f35b61021a610215366004611cb9565b6104e9565b005b61021a61022a366004611d52565b610603565b61021a61023d366004611e0c565b6106b5565b61026b610250366004611e77565b6099602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101fe565b6102a6610291366004611e77565b60009081526065602052604090206001015490565b6040519081526020016101fe565b61021a6102c2366004611ea5565b610706565b61021a6102d5366004611ea5565b610730565b6102a66000805160206126f683398151915281565b61021a6102fd366004611ed5565b6107b3565b61021a610310366004611f20565b6107c8565b61021a610323366004611f6f565b6107fc565b60985461026b906001600160a01b031681565b61021a610349366004611fe2565b610867565b610356600181565b60405160ff90911681526020016101fe565b6102a6610376366004611ea5565b6108f9565b60975461026b906001600160a01b031681565b61021a61039c366004612023565b610927565b6101f26103af366004611ea5565b61096b565b6102a66103c2366004611ea5565b610996565b6102a6600081565b61026b6103dd366004611e77565b609a602052600090815260409020546001600160a01b031681565b61021a610406366004612069565b6109cd565b61041e610419366004611e77565b6109ef565b604080516001600160801b03948516815292841660208401529216918101919091526060016101fe565b61021a61045636600461208b565b610a24565b6102a66000805160206126d683398151915281565b61021a61047e3660046120d6565b610b96565b61021a610491366004611ea5565b610c70565b61021a6104a4366004612159565b610c95565b6102a66103e881565b60006001600160e01b03198216637965db0b60e01b14806104e357506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000805160206126d683398151915261050181610d39565b83868380831461052457604051632627b42d60e11b815260040160405180910390fd5b60005b838110156105f65761058289898381811061054457610544612187565b9050602002016020810190610559919061219d565b88888481811061056b5761056b612187565b905060200281019061057d91906121ba565b610d46565b60005b838110156105e5576105d58c8c838181106105a2576105a2612187565b905060200201358b8b858181106105bb576105bb612187565b90506020020160208101906105d0919061219d565b610daf565b6105de81612216565b9050610585565b506105ef81612216565b9050610527565b5050505050505050505050565b6000805160206126d683398151915261061b81610d39565b838280821461063d57604051632627b42d60e11b815260040160405180910390fd5b60005b828110156106aa5761068488888381811061065d5761065d612187565b9050602002016020810190610672919061219d565b87878481811061056b5761056b612187565b61069a898989848181106105bb576105bb612187565b6106a381612216565b9050610640565b505050505050505050565b6106c0338383610d46565b8260005b818110156106fe576106ee8686838181106106e1576106e1612187565b9050602002013533610daf565b6106f781612216565b90506106c4565b505050505050565b60008281526065602052604090206001015461072181610d39565b61072b8383610dd3565b505050565b6001600160a01b03811633146107a55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107af8282610e59565b5050565b6107be338383610d46565b61072b8333610daf565b6000805160206126d68339815191526107e081610d39565b6107eb848484610d46565b6107f58585610daf565b5050505050565b6000805160206126d683398151915261081481610d39565b61081f848484610d46565b8460005b8181101561085d5761084d88888381811061084057610840612187565b9050602002013587610daf565b61085681612216565b9050610823565b5050505050505050565b6000805160206126f683398151915261087f81610d39565b60006108946001600160a01b03851684610ec0565b9050806108b457604051635d5d800b60e11b815260040160405180910390fd5b5050600090815260996020908152604080832080546001600160a01b039687166001600160a01b031991821617909155609a9092529091208054929093169116179055565b6000828152609a602052604081205461091d906001600160a01b0316308585610fe5565b9695505050505050565b6000805160206126f683398151915261093f81610d39565b61095585846109506103e88661222f565b611094565b6107f584846109666103e88661222f565b611145565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000828152609a60205260408120546109ba906001600160a01b0316308585610fe5565b506001600160801b031695945050505050565b6000805160206126f68339815191526109e581610d39565b61072b838361119b565b6000818152609a602052604081205481908190610a16906001600160a01b03163086611225565b919790965090945092505050565b600054610100900460ff1615808015610a445750600054600160ff909116105b80610a5e5750303b158015610a5e575060005460ff166001145b610ac15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161079c565b6000805460ff191660011790558015610ae4576000805461ff0019166101001790555b610aec6112cb565b610af7600085610dd3565b610b02600033610e59565b610b1a6000805160206126f683398151915284610dd3565b609880546001600160a01b038085166001600160a01b03199283161790925560978054928716929091169190911790558015610b90576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000805160206126f6833981519152610bae81610d39565b83828114610bcf57604051632627b42d60e11b815260040160405180910390fd5b60005b818110156106aa57610c1d89888884818110610bf057610bf0612187565b905060200201356103e8888886818110610c0c57610c0c612187565b90506020020135610950919061222f565b610c6088888884818110610c3357610c33612187565b905060200201356103e8888886818110610c4f57610c4f612187565b90506020020135610966919061222f565b610c6981612216565b9050610bd2565b600082815260656020526040902060010154610c8b81610d39565b61072b8383610e59565b6000610ca081610d39565b81610d2f576000848152609a6020526040908190205490516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015610d09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2d9190612246565b505b610b90848461119b565b610d438133611338565b50565b6098546040516305c8d5d960e21b81526001600160a01b0390911690631723576490610d7a90869086908690600401612263565b60006040518083038186803b158015610d9257600080fd5b505afa158015610da6573d6000803e3d6000fd5b50505050505050565b6000828152609a602052604090205461072b906001600160a01b0316308484611391565b610ddd828261096b565b6107af5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610e153390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610e63828261096b565b156107af5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000806000610ece856114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663d787840a898960006001600160401b03811115610f0c57610f0c6122a3565b6040519080825280601f01601f191660200182016040528015610f36576020820181803683370190505b50604051602401610f4993929190612309565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252610f9293925090600401612342565b6000604051808303816000875af1158015610fb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd99190810190612389565b50600195945050505050565b6000806000806000610ff689611683565b604051635b53405160e01b81526001600160a01b038c811660048301528b8116602483015263ffffffff8b16604483015289811660648301529193509083169150635b53405190608401608060405180830381865afa15801561105d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110819190612451565b929c919b50995090975095505050505050565b6001600160a01b0383166110a757505050565b6000828152609a60205260408120546110cb906001600160a01b0316308587610fe5565b506001600160801b031692505050600082826110e791906124a1565b11611116576000838152609a6020526040902054611110906001600160a01b03163085876117e8565b50610b90565b6107f5838561112585856124a1565b6000878152609a60205260409020546001600160a01b0316929190611836565b6001600160a01b03831661115857505050565b6000828152609a602052604081205461117c906001600160a01b0316308587610fe5565b506001600160801b0316925050506107f58385848461112591906124b4565b6000828152609a60205260408120546111bf906001600160a01b03163085856118c3565b506000848152609a60205260409020549091506111e6906001600160a01b03168483611968565b5060408051848152602081018490527f8ed3543c92c7106a56f0a6cdaa716fef62211f99d6630ecd4dc1231d9edae811910160405180910390a1505050565b600080600080600061123688611683565b6040516323fc23f360e01b81526001600160a01b038b811660048301528a8116602483015263ffffffff8a16604483015291935090831691506323fc23f390606401608060405180830381865afa158015611295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b991906124c7565b94509450945094505093509350935093565b600054610100900460ff166113365760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161079c565b565b611342828261096b565b6107af5761134f81611a90565b61135a836020611aa2565b60405160200161136b92919061251d565b60408051601f198184030181529082905262461bcd60e51b825261079c91600401612592565b600080600061139f876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663acafa1b88b8b8b8b60006001600160401b038111156113df576113df6122a3565b6040519080825280601f01601f191660200182016040528015611409576020820181803683370190505b5060405160240161141e9594939291906125a5565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b031916825261146793925090600401612342565b6000604051808303816000875af1158015611486573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114ae9190810190612389565b506001979650505050505050565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661158157826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa15801561155a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061157e91906125e5565b91505b604051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a67460048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156115e5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061160991906125e5565b9050817f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea83755807fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb555b6001600160a01b03821661166857611668612602565b6001600160a01b03811661167e5761167e612602565b915091565b7f65599bf746e17a00ea62e3610586992d88101b78eec3cf380706621fb97ea837547fa832ee1924ea960211af2df07d65d166232018f613ac6708043cd8f8773eddeb546001600160a01b038116611652576001600160a01b03821661174857826001600160a01b03166320bc44256040518163ffffffff1660e01b8152600401602060405180830381865afa158015611721573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061174591906125e5565b91505b604051635b69006f60e11b81527f15609310ae3c30189a1218b7adabaf36c267255e70cf91b6cba384367d9eda3260048201526001600160a01b0383169063b6d200de90602401602060405180830381865afa1580156117ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d091906125e5565b90506001600160a01b03821661166857611668612602565b60008060006117f6876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b0316632e5e74c68b8b8b8b60006001600160401b038111156113df576113df6122a3565b6000806000611844876114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663232d2b588b8b8b8b60006001600160401b03811115611884576118846122a3565b6040519080825280601f01601f1916602001820160405280156118ae576020820181803683370190505b5060405160240161141e959493929190612618565b60008060006118d187611683565b604051632266eabb60e21b81526001600160a01b038a81166004830152898116602483015263ffffffff8916604483015260648201889052919350908316915063899baaec906084016040805180830381865afa158015611936573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195a919061265f565b925092505094509492505050565b6000806000611976866114bc565b91509150816001600160a01b03166339255d5b82836001600160a01b031663b96731c28a8a8a60006001600160401b038111156119b5576119b56122a3565b6040519080825280601f01601f1916602001820160405280156119df576020820181803683370190505b506040516024016119f3949392919061268b565b60408051808303601f1901815291815260208201805160e094851b6001600160e01b03909116179052519185901b6001600160e01b0319168252611a3c93925090600401612342565b6000604051808303816000875af1158015611a5b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a839190810190612389565b5060019695505050505050565b60606104e36001600160a01b03831660145b60606000611ab183600261222f565b611abc9060026124b4565b6001600160401b03811115611ad357611ad36122a3565b6040519080825280601f01601f191660200182016040528015611afd576020820181803683370190505b509050600360fc1b81600081518110611b1857611b18612187565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611b4757611b47612187565b60200101906001600160f81b031916908160001a9053506000611b6b84600261222f565b611b769060016124b4565b90505b6001811115611bee576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611baa57611baa612187565b1a60f81b828281518110611bc057611bc0612187565b60200101906001600160f81b031916908160001a90535060049490941c93611be7816126be565b9050611b79565b508315611c3d5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161079c565b9392505050565b600060208284031215611c5657600080fd5b81356001600160e01b031981168114611c3d57600080fd5b60008083601f840112611c8057600080fd5b5081356001600160401b03811115611c9757600080fd5b6020830191508360208260051b8501011115611cb257600080fd5b9250929050565b60008060008060008060608789031215611cd257600080fd5b86356001600160401b0380821115611ce957600080fd5b611cf58a838b01611c6e565b90985096506020890135915080821115611d0e57600080fd5b611d1a8a838b01611c6e565b90965094506040890135915080821115611d3357600080fd5b50611d4089828a01611c6e565b979a9699509497509295939492505050565b600080600080600060608688031215611d6a57600080fd5b8535945060208601356001600160401b0380821115611d8857600080fd5b611d9489838a01611c6e565b90965094506040880135915080821115611dad57600080fd5b50611dba88828901611c6e565b969995985093965092949392505050565b60008083601f840112611ddd57600080fd5b5081356001600160401b03811115611df457600080fd5b602083019150836020828501011115611cb257600080fd5b60008060008060408587031215611e2257600080fd5b84356001600160401b0380821115611e3957600080fd5b611e4588838901611c6e565b90965094506020870135915080821115611e5e57600080fd5b50611e6b87828801611dcb565b95989497509550505050565b600060208284031215611e8957600080fd5b5035919050565b6001600160a01b0381168114610d4357600080fd5b60008060408385031215611eb857600080fd5b823591506020830135611eca81611e90565b809150509250929050565b600080600060408486031215611eea57600080fd5b8335925060208401356001600160401b03811115611f0757600080fd5b611f1386828701611dcb565b9497909650939450505050565b60008060008060608587031215611f3657600080fd5b843593506020850135611f4881611e90565b925060408501356001600160401b03811115611f6357600080fd5b611e6b87828801611dcb565b600080600080600060608688031215611f8757600080fd5b85356001600160401b0380821115611f9e57600080fd5b611faa89838a01611c6e565b909750955060208801359150611fbf82611e90565b90935060408701359080821115611fd557600080fd5b50611dba88828901611dcb565b600080600060608486031215611ff757600080fd5b833561200281611e90565b9250602084013561201281611e90565b929592945050506040919091013590565b6000806000806080858703121561203957600080fd5b843561204481611e90565b9350602085013561205481611e90565b93969395505050506040820135916060013590565b6000806040838503121561207c57600080fd5b50508035926020909101359150565b6000806000606084860312156120a057600080fd5b83356120ab81611e90565b925060208401356120bb81611e90565b915060408401356120cb81611e90565b809150509250925092565b600080600080600080608087890312156120ef57600080fd5b86356120fa81611e90565b9550602087013561210a81611e90565b945060408701356001600160401b038082111561212657600080fd5b6121328a838b01611c6e565b90965094506060890135915080821115611d3357600080fd5b8015158114610d4357600080fd5b60008060006060848603121561216e57600080fd5b833592506020840135915060408401356120cb8161214b565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156121af57600080fd5b8135611c3d81611e90565b6000808335601e198436030181126121d157600080fd5b8301803591506001600160401b038211156121eb57600080fd5b602001915036819003821315611cb257600080fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161222857612228612200565b5060010190565b80820281158282048414176104e3576104e3612200565b60006020828403121561225857600080fd5b8151611c3d8161214b565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156122d45781810151838201526020016122bc565b50506000910152565b600081518084526122f58160208601602086016122b9565b601f01601f19169290920160200192915050565b6001600160a01b038416815263ffffffff83166020820152606060408201819052600090612339908301846122dd565b95945050505050565b6001600160a01b0383168152606060208201819052600090612366908301846122dd565b8281036040938401526002815261060f60f31b6020820152919091019392505050565b60006020828403121561239b57600080fd5b81516001600160401b03808211156123b257600080fd5b818401915084601f8301126123c657600080fd5b8151818111156123d8576123d86122a3565b604051601f8201601f19908116603f01168101908382118183101715612400576124006122a3565b8160405282815287602084870101111561241957600080fd5b61242a8360208301602088016122b9565b979650505050505050565b80516001600160801b038116811461244c57600080fd5b919050565b6000806000806080858703121561246757600080fd5b84516124728161214b565b60208601519094506124838161214b565b925061249160408601612435565b6060959095015193969295505050565b818103818111156104e3576104e3612200565b808201808211156104e3576104e3612200565b600080600080608085870312156124dd57600080fd5b84516124e88161214b565b93506124f660208601612435565b925061250460408601612435565b915061251260608601612435565b905092959194509250565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516125558160178501602088016122b9565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516125868160288401602088016122b9565b01602801949350505050565b602081526000611c3d60208301846122dd565b6001600160a01b038681168252858116602083015263ffffffff851660408301528316606082015260a06080820181905260009061242a908301846122dd565b6000602082840312156125f757600080fd5b8151611c3d81611e90565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03868116825263ffffffff86166020830152841660408201526001600160801b038316606082015260a06080820181905260009061242a908301846122dd565b6000806040838503121561267257600080fd5b8251915061268260208401612435565b90509250929050565b60018060a01b038516815263ffffffff8416602082015282604082015260806060820152600061091d60808301846122dd565b6000816126cd576126cd612200565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3ec2979137d1774e40fe2638d355bf7a7b092be4c67f242aad1655e1e27f9df9cca26469706673582212206c348188c63426d6f8b13ed22840e216eee4ecc33d691f3a3d20b8d724efb81864736f6c63430008130033", + "nonce": "0x79", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xc28eb86e2b16cf9a9e0d2895ab823e10e3c7d636c04d00cbe3bb281adcdeb6b3", + "transactionType": "CREATE", + "contractName": "ERC721ABLE", + "contractAddress": "0x16d48a7B9D48C0a1ec51DcCB9AACa3a9317bd78C", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x3d17bd", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61364680620000f46000396000f3fe6080604052600436106102465760003560e01c806366748e9811610139578063a1db9782116100b6578063cb22e01b1161007a578063cb22e01b146106e0578063d5abeb01146106f3578063de7ecf8714610709578063e985e9c51461071f578063f2fde38b1461073f578063fe325e961461075f57600080fd5b8063a1db97821461064d578063a22cb4651461066d578063aa10820e1461068d578063b88d4fde146106ad578063c87b56dd146106c057600080fd5b8063715018a6116100fd578063715018a6146105be578063754b377c146105d35780638c72c54e146105fa5780638da5cb5b1461061a57806395d89b411461063857600080fd5b806366748e98146105065780636cc82b841461053e5780636dbdaae61461055e5780636f8b44b01461057e57806370a082311461059e57600080fd5b80632e37eef6116101c7578063493548441161018b57806349354844146104525780634b102262146104725780634c5dffea146104a657806355f804b3146104c65780636352211e146104e657600080fd5b80632e37eef6146103905780632fb3b361146103df5780634128541c146103ff57806342842e0e1461041f578063430ab18f1461043257600080fd5b8063180f1ea31161020e578063180f1ea31461030f57806318160ddd146103245780631c6d76751461034757806323b872dd146103675780632a778c9b1461037a57600080fd5b806301ffc9a71461024b57806306fdde0314610280578063075834cb146102a2578063081812fc146102c4578063095ea7b3146102fc575b600080fd5b34801561025757600080fd5b5061026b610266366004612a1f565b610774565b60405190151581526020015b60405180910390f35b34801561028c57600080fd5b50610295610785565b6040516102779190612a8c565b3480156102ae57600080fd5b506102c26102bd366004612afc565b610820565b005b3480156102d057600080fd5b506102e46102df366004612bcf565b610917565b6040516001600160a01b039091168152602001610277565b6102c261030a366004612be8565b610964565b34801561031b57600080fd5b506102c2610974565b34801561033057600080fd5b50610339610c0b565b604051908152602001610277565b34801561035357600080fd5b506069546102e4906001600160a01b031681565b6102c2610375366004612c14565b610c2b565b34801561038657600080fd5b50610339606a5481565b34801561039c57600080fd5b506103b06103ab366004612bcf565b610e2b565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610277565b3480156103eb57600080fd5b506102c26103fa366004612ce0565b610e74565b34801561040b57600080fd5b506065546102e4906001600160a01b031681565b6102c261042d366004612c14565b611106565b34801561043e57600080fd5b506102c261044d366004612d7b565b611126565b34801561045e57600080fd5b506067546102e4906001600160a01b031681565b34801561047e57600080fd5b506103397f73e84917c5def9002f59334ba09785218b36a703c0e3d37d832ea21e233bb17f81565b3480156104b257600080fd5b506102c26104c1366004612e12565b61116d565b3480156104d257600080fd5b506102c26104e1366004612ea7565b611185565b3480156104f257600080fd5b506102e4610501366004612bcf565b61119a565b34801561051257600080fd5b50610339610521366004612be8565b606e60209081526000928352604080842090915290825290205481565b34801561054a57600080fd5b506066546102e4906001600160a01b031681565b34801561056a57600080fd5b506102c2610579366004612bcf565b6111a5565b34801561058a57600080fd5b506102c2610599366004612bcf565b6111b2565b3480156105aa57600080fd5b506103396105b9366004612ee8565b6111e7565b3480156105ca57600080fd5b506102c261124f565b3480156105df57600080fd5b506105e8600181565b60405160ff9091168152602001610277565b34801561060657600080fd5b506068546102e4906001600160a01b031681565b34801561062657600080fd5b506033546001600160a01b03166102e4565b34801561064457600080fd5b50610295611263565b34801561065957600080fd5b506102c2610668366004612be8565b61129f565b34801561067957600080fd5b506102c2610688366004612f13565b611347565b34801561069957600080fd5b506102c26106a8366004612f4c565b6113c4565b6102c26106bb366004612fc0565b6115b4565b3480156106cc57600080fd5b506102956106db366004612bcf565b6115fe565b6102c26106ee366004612e12565b611759565b3480156106ff57600080fd5b50610339606f5481565b34801561071557600080fd5b50610339606b5481565b34801561072b57600080fd5b5061026b61073a36600461303f565b611995565b34801561074b57600080fd5b506102c261075a366004612ee8565b6119d2565b34801561076b57600080fd5b506102c2611a4b565b600061077f82611c1d565b92915050565b606061078f611c6b565b600201805461079d9061306d565b80601f01602080910402602001604051908101604052809291908181526020018280546107c99061306d565b80156108165780601f106107eb57610100808354040283529160200191610816565b820191906000526020600020905b8154815290600101906020018083116107f957829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061085a5761085a6130a1565b90600052602060002090600602016003015461087691906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b1580156108e357600080fd5b505af11580156108f7573d6000803e3d6000fd5b5050505061090a8b8b8b87878787611c8f565b5050505050505050505050565b600061092282611f40565b61093f576040516333d1c03960e21b815260040160405180910390fd5b610947611c6b565b60009283526006016020525060409020546001600160a01b031690565b61097082826001611f89565b5050565b61097c61203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa1580156109d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fa91906130e4565b90925090506001600160a01b038216610a2657604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a939190613112565b90506000612710610aa484846130cd565b610aae919061312b565b90506000610abc828461314d565b90508015610b5e5760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3c9190613160565b905080610b5c57604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c045760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610bbe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be29190613160565b905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610c17611c6b565b60010154610c23611c6b565b540303919050565b6000610c3682612098565b9050836001600160a01b0316816001600160a01b031614610c695760405162a1148160e81b815260040160405180910390fd5b600080610c7584612145565b91509150610c9a8187610c853390565b6001600160a01b039081169116811491141790565b610cc557610ca88633611995565b610cc557604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610cec57604051633a954ecd60e21b815260040160405180910390fd5b610cf9868686600161216d565b8015610d0457600082555b610d0c611c6b565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610d38611c6b565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d6f611c6b565b60008681526004919091016020526040812091909155600160e11b84169003610de55760018401610d9e611c6b565b600082815260049190910160205260408120549003610de357610dbf611c6b565b548114610de35783610dcf611c6b565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610c02565b606d8181548110610e3b57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b6000805160206135f183398151915254610100900460ff16610ea9576000805160206135f18339815191525460ff1615610ead565b303b155b610f245760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b6000805160206135f183398151915254610100900460ff16158015610f60576000805160206135f1833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f805750600054600160ff909116105b80610f9a5750303b158015610f9a575060005460ff166001145b610ffd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610f1b565b6000805460ff191660011790558015611020576000805461ff0019166101001790555b61103983604051806020016040528060008152506121f4565b611041612232565b61104a87612261565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a169290911691909117905580156110df576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610c025750506000805160206135f1833981519152805461ff001916905550505050565b611121838383604051806020016040528060008152506115b4565b505050565b61112e61203e565b606f8890558786111561115457604051632627b42d60e11b815260040160405180910390fd5b611163878787878787876122b3565b5050505050505050565b61117c87878787878787611c8f565b50505050505050565b61118d61203e565b606c6111218284836131c3565b600061077f82612098565b6111ad61203e565b606b55565b6111ba61203e565b6111c26123f6565b8110156111e257604051632627b42d60e11b815260040160405180910390fd5b606f55565b60006001600160a01b038216611210576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611220611c6b565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61125761203e565b6112616000612261565b565b6060606a5460001461129c5761127a606a54612409565b60405160200161128a9190613282565b60405160208183030381529060405290505b90565b6112a761203e565b6069546001600160a01b03908116908316036112d657604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611323573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111219190613160565b80611350611c6b565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6113cc61203e565b606d54156113e0576113e0606d60006129ad565b600081815b8181101561157a576000858583818110611401576114016130a1565b905060c0020180360381019061141791906132ac565b9050838160000151108061142f575060208101518151115b1561144d57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506115738161332b565b90506113e5565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b6115bf848484610c2b565b6001600160a01b0383163b156115f8576115db8484848461249b565b6115f8576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061160982611f40565b61162657604051632627b42d60e11b815260040160405180910390fd5b6000611630612586565b9050805160000361165257604051806020016040528060008152509150611753565b6040805160018082528183019092526000916020820181803683370190505090508160018351611682919061314d565b81518110611692576116926130a1565b602001015160f81c60f81b816000815181106116b0576116b06130a1565b60200101906001600160f81b031916908160001a905350604051602f60f81b6020820152819060210160405160208183030381529060405280519060200120816040516020016117009190613344565b604051602081830303815290604052805190602001200361174c578261172586612595565b604051602001611736929190613360565b6040516020818303038152906040529350611750565b8293505b50505b50919050565b6117648783836125d9565b61176d86612639565b61178a576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061179f5761179f6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f54909150866118086123f6565b611812919061338f565b1115611831576040516322eb5e9560e21b815260040160405180910390fd5b8060a001516118d0576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611872908b9030908c908b908b906004016133cb565b602060405180830381865afa15801561188f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118b39190613160565b6118d0576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b845290915290205461190490889061338f565b111561192357604051631d66b65960e11b815260040160405180910390fd5b85816040015161193391906130cd565b3414611952576040516318f4198360e21b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a84529091528120805488929061198590849061338f565b90915550611163905088876126ea565b600061199f611c6b565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b6119da61203e565b6001600160a01b038116611a3f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610f1b565b611a4881612261565b50565b611a5361203e565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611aad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad191906130e4565b90925090506001600160a01b038216611afd57604051632627b42d60e11b815260040160405180910390fd5b476000612710611b0d84846130cd565b611b17919061312b565b90506000611b25828461314d565b90508015611ba3576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611b7a576040519150601f19603f3d011682016040523d82523d6000602084013e611b7f565b606091505b5050905080611ba157604051631fa55c0760e11b815260040160405180910390fd5b505b8115610c04576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611bf6576040519150601f19603f3d011682016040523d82523d6000602084013e611bfb565b606091505b5050905080610c0257604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611c4e57506380ac58cd60e01b6001600160e01b03198316145b8061077f5750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611c9a8783836125d9565b6069546001600160a01b0316611cc357604051632d1f608d60e11b815260040160405180910390fd5b611ccc86612639565b611ce9576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611cfe57611cfe6130a1565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820152606f5490915086611d676123f6565b611d71919061338f565b1115611d90576040516322eb5e9560e21b815260040160405180910390fd5b8060a00151611e2f576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611dd1908b9030908c908b908b906004016133cb565b602060405180830381865afa158015611dee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e129190613160565b611e2f576040516352c973a760e01b815260040160405180910390fd5b60808101516001600160a01b0389166000908152606e602090815260408083208b8452909152902054611e6390889061338f565b1115611e8257604051631d66b65960e11b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611eab908b906130cd565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611eff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f239190613160565b61195257604051635b88974760e11b815260040160405180910390fd5b600081600111158015611f5a5750611f56611c6b565b5482105b801561077f5750600160e01b611f6e611c6b565b60008481526004919091016020526040902054161592915050565b6000611f948361119a565b90508115611fd357336001600160a01b03821614611fd357611fb68133611995565b611fd3576040516367d9dca160e11b815260040160405180910390fd5b83611fdc611c6b565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146112615760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610f1b565b60008160011161212c576120aa611c6b565b600083815260049190910160205260408120549150600160e01b8216900361212c5780600003612127576120dc611c6b565b5482106120fc57604051636f96cda160e11b815260040160405180910390fd5b612104611c6b565b6000199092016000818152600493909301602052604090922054905080156120fc575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000612152611c6b565b60009485526006016020525050604090912080549092909150565b606b54156115f857606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b1580156121e057600080fd5b505af1158015611163573d6000803e3d6000fd5b6000805160206135f183398151915254610100900460ff166122285760405162461bcd60e51b8152600401610f1b9061340a565b6109708282612832565b600054610100900460ff166122595760405162461bcd60e51b8152600401610f1b9061345e565b6112616128a5565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a54156122d4576040516302d1671b60e41b815260040160405180910390fd5b861580156122ea57506001600160a01b03841615155b8061230657506001600160a01b03841615801561230657508615155b1561232457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af1158015612381573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123a59190613112565b606a556001600160a01b038316156123d357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c6123e58284836131c3565b50851561117c5761117c85876126ea565b60006001612402611c6b565b5403919050565b60606000612416836128d5565b60010190506000816001600160401b0381111561243557612435612c55565b6040519080825280601f01601f19166020018201604052801561245f576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461246957509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906124d09033908990889088906004016134a9565b6020604051808303816000875af192505050801561250b575060408051601f3d908101601f19168201909252612508918101906134e6565b60015b612569573d808015612539576040519150601f19603f3d011682016040523d82523d6000602084013e61253e565b606091505b508051600003612561576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461079d9061306d565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a9004806125af5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061260d90869086908690600401613503565b60006040518083038186803b15801561262557600080fd5b505afa15801561117c573d6000803e3d6000fd5b606d54600090821061265e57604051632627b42d60e11b815260040160405180910390fd5b6000606d8381548110612673576126736130a1565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906126e35750428160200151115b9392505050565b60006126f4611c6b565b54905060008290036127195760405163b562e8dd60e01b815260040160405180910390fd5b612726600084838561216d565b68010000000000000001820261273a611c6b565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b1717612775611c6b565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146127ff57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001016127c7565b508160000361282057604051622e076360e81b815260040160405180910390fd5b80612829611c6b565b55506111219050565b6000805160206135f183398151915254610100900460ff166128665760405162461bcd60e51b8152600401610f1b9061340a565b8161286f611c6b565b6002019061287d9082613531565b5080612887611c6b565b600301906128959082613531565b5060016128a0611c6b565b555050565b600054610100900460ff166128cc5760405162461bcd60e51b8152600401610f1b9061345e565b61126133612261565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106129145772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612940576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061295e57662386f26fc10000830492506010015b6305f5e1008310612976576305f5e100830492506008015b612710831061298a57612710830492506004015b6064831061299c576064830492506002015b600a831061077f5760010192915050565b5080546000825560060290600052602060002090810190611a4891905b80821115612a05576000808255600182018190556002820181905560038201819055600482015560058101805460ff191690556006016129ca565b5090565b6001600160e01b031981168114611a4857600080fd5b600060208284031215612a3157600080fd5b81356126e381612a09565b60005b83811015612a57578181015183820152602001612a3f565b50506000910152565b60008151808452612a78816020860160208601612a3c565b601f01601f19169290920160200192915050565b6020815260006126e36020830184612a60565b6001600160a01b0381168114611a4857600080fd5b60008083601f840112612ac657600080fd5b5081356001600160401b03811115612add57600080fd5b602083019150836020828501011115612af557600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215612b1e57600080fd5b612b288c35612a9f565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff81168114612b5557600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d0135811015612b7e57600080fd5b612b8e8e60e08f01358f01612ab4565b90955093506101008d0135811015612ba557600080fd5b50612bb78d6101008e01358e01612ab4565b81935080925050509295989b509295989b9093969950565b600060208284031215612be157600080fd5b5035919050565b60008060408385031215612bfb57600080fd5b8235612c0681612a9f565b946020939093013593505050565b600080600060608486031215612c2957600080fd5b8335612c3481612a9f565b92506020840135612c4481612a9f565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612c8557612c85612c55565b604051601f8501601f19908116603f01168101908282118183101715612cad57612cad612c55565b81604052809350858152868686011115612cc657600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612cf857600080fd5b8535612d0381612a9f565b94506020860135612d1381612a9f565b93506040860135612d2381612a9f565b92506060860135612d3381612a9f565b915060808601356001600160401b03811115612d4e57600080fd5b8601601f81018813612d5f57600080fd5b612d6e88823560208401612c6b565b9150509295509295909350565b60008060008060008060008060e0898b031215612d9757600080fd5b8835975060208901359650604089013595506060890135612db781612a9f565b94506080890135612dc781612a9f565b935060a0890135612dd781612a9f565b925060c08901356001600160401b03811115612df257600080fd5b612dfe8b828c01612ab4565b999c989b5096995094979396929594505050565b600080600080600080600060a0888a031215612e2d57600080fd5b8735612e3881612a9f565b9650602088013595506040880135945060608801356001600160401b0380821115612e6257600080fd5b612e6e8b838c01612ab4565b909650945060808a0135915080821115612e8757600080fd5b50612e948a828b01612ab4565b989b979a50959850939692959293505050565b60008060208385031215612eba57600080fd5b82356001600160401b03811115612ed057600080fd5b612edc85828601612ab4565b90969095509350505050565b600060208284031215612efa57600080fd5b81356126e381612a9f565b8015158114611a4857600080fd5b60008060408385031215612f2657600080fd5b8235612f3181612a9f565b91506020830135612f4181612f05565b809150509250929050565b60008060208385031215612f5f57600080fd5b82356001600160401b0380821115612f7657600080fd5b818501915085601f830112612f8a57600080fd5b813581811115612f9957600080fd5b86602060c083028501011115612fae57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612fd657600080fd5b8435612fe181612a9f565b93506020850135612ff181612a9f565b92506040850135915060608501356001600160401b0381111561301357600080fd5b8501601f8101871361302457600080fd5b61303387823560208401612c6b565b91505092959194509250565b6000806040838503121561305257600080fd5b823561305d81612a9f565b91506020830135612f4181612a9f565b600181811c9082168061308157607f821691505b60208210810361175357634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761077f5761077f6130b7565b600080604083850312156130f757600080fd5b825161310281612a9f565b6020939093015192949293505050565b60006020828403121561312457600080fd5b5051919050565b60008261314857634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561077f5761077f6130b7565b60006020828403121561317257600080fd5b81516126e381612f05565b601f82111561112157600081815260208120601f850160051c810160208610156131a45750805b601f850160051c820191505b81811015610c02578281556001016131b0565b6001600160401b038311156131da576131da612c55565b6131ee836131e8835461306d565b8361317d565b6000601f841160018114613222576000851561320a5750838201355b600019600387901b1c1916600186901b178355610c04565b600083815260209020601f19861690835b828110156132535786850135825560209485019460019092019101613233565b50868210156132705760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b81526000825161329f816002850160208701612a3c565b9190910160020192915050565b600060c082840312156132be57600080fd5b60405160c081018181106001600160401b03821117156132e0576132e0612c55565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561331f81612f05565b60a08201529392505050565b60006001820161333d5761333d6130b7565b5060010190565b60008251613356818460208701612a3c565b9190910192915050565b60008351613372818460208801612a3c565b835190830190613386818360208801612a3c565b01949350505050565b8082018082111561077f5761077f6130b7565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b03868116825285166020820152604081018490526080606082018190526000906133ff90830184866133a2565b979650505050505050565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906134dc90830184612a60565b9695505050505050565b6000602082840312156134f857600080fd5b81516126e381612a09565b6001600160a01b038416815260406020820181905260009061352890830184866133a2565b95945050505050565b81516001600160401b0381111561354a5761354a612c55565b61355e81613558845461306d565b8461317d565b602080601f831160018114613593576000841561357b5750858301515b600019600386901b1c1916600185901b178555610c02565b600085815260208120601f198616915b828110156135c2578886015182559484019460019091019084016135a3565b50858210156135e05787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa26469706673582212206f508db960be3106d2173815bb62c8108cf3bfa7055b207f68a5889fdbbde0b164736f6c63430008130033", + "nonce": "0x7a", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x1c4ddc83ae8554a8877368d5090e660be65fdc65cebd3abf173721263322dadc", + "transactionType": "CREATE", + "contractName": "ERC721ABOE", + "contractAddress": "0xD0aA9747B3BA7418456d58e5e1D21aB8F2ba4f87", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x3b2cf4", + "value": "0x0", + "data": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61348780620000f46000396000f3fe6080604052600436106102305760003560e01c806366748e981161012e578063a1db9782116100ab578063cb22e01b1161006f578063cb22e01b146106aa578063de7ecf87146106bd578063e985e9c5146106d3578063f2fde38b146106f3578063fe325e961461071357600080fd5b8063a1db978214610617578063a22cb46514610637578063aa10820e14610657578063b88d4fde14610677578063c87b56dd1461068a57600080fd5b8063754b377c116100f2578063754b377c1461057d5780638c72c54e146105a45780638d6d31e3146105c45780638da5cb5b146105e457806395d89b411461060257600080fd5b806366748e98146104d05780636cc82b84146105085780636dbdaae61461052857806370a0823114610548578063715018a61461056857600080fd5b80632a778c9b116101bc5780634935484411610180578063493548441461041c5780634b1022621461043c5780634c5dffea1461047057806355f804b3146104905780636352211e146104b057600080fd5b80632a778c9b146103645780632e37eef61461037a5780632fb3b361146103c95780634128541c146103e957806342842e0e1461040957600080fd5b8063095ea7b311610203578063095ea7b3146102e6578063180f1ea3146102f957806318160ddd1461030e5780631c6d76751461033157806323b872dd1461035157600080fd5b806301ffc9a71461023557806306fdde031461026a578063075834cb1461028c578063081812fc146102ae575b600080fd5b34801561024157600080fd5b5061025561025036600461287c565b610728565b60405190151581526020015b60405180910390f35b34801561027657600080fd5b5061027f610739565b60405161026191906128e9565b34801561029857600080fd5b506102ac6102a7366004612959565b6107d4565b005b3480156102ba57600080fd5b506102ce6102c9366004612a2c565b6108cb565b6040516001600160a01b039091168152602001610261565b6102ac6102f4366004612a45565b610918565b34801561030557600080fd5b506102ac610928565b34801561031a57600080fd5b50610323610bbf565b604051908152602001610261565b34801561033d57600080fd5b506069546102ce906001600160a01b031681565b6102ac61035f366004612a71565b610bdf565b34801561037057600080fd5b50610323606a5481565b34801561038657600080fd5b5061039a610395366004612a2c565b610ddf565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c001610261565b3480156103d557600080fd5b506102ac6103e4366004612b3d565b610e28565b3480156103f557600080fd5b506065546102ce906001600160a01b031681565b6102ac610417366004612a71565b6110ba565b34801561042857600080fd5b506067546102ce906001600160a01b031681565b34801561044857600080fd5b506103237fdcfc50123fc6ea3c803b5b1b4cbbc9ce5b81f13451fd3124e43ef593fd840d1981565b34801561047c57600080fd5b506102ac61048b366004612bd8565b6110da565b34801561049c57600080fd5b506102ac6104ab366004612c6d565b6110f2565b3480156104bc57600080fd5b506102ce6104cb366004612a2c565b611107565b3480156104dc57600080fd5b506103236104eb366004612a45565b606e60209081526000928352604080842090915290825290205481565b34801561051457600080fd5b506066546102ce906001600160a01b031681565b34801561053457600080fd5b506102ac610543366004612a2c565b611112565b34801561055457600080fd5b50610323610563366004612cae565b61111f565b34801561057457600080fd5b506102ac611187565b34801561058957600080fd5b50610592600181565b60405160ff9091168152602001610261565b3480156105b057600080fd5b506068546102ce906001600160a01b031681565b3480156105d057600080fd5b506102ac6105df366004612ccb565b61119b565b3480156105f057600080fd5b506033546001600160a01b03166102ce565b34801561060e57600080fd5b5061027f6111b2565b34801561062357600080fd5b506102ac610632366004612a45565b6111ee565b34801561064357600080fd5b506102ac610652366004612d54565b611296565b34801561066357600080fd5b506102ac610672366004612d8d565b611313565b6102ac610685366004612e01565b611503565b34801561069657600080fd5b5061027f6106a5366004612a2c565b61154d565b6102ac6106b8366004612bd8565b6116a8565b3480156106c957600080fd5b50610323606b5481565b3480156106df57600080fd5b506102556106ee366004612e80565b61184d565b3480156106ff57600080fd5b506102ac61070e366004612cae565b61188a565b34801561071f57600080fd5b506102ac611903565b600061073382611ad5565b92915050565b6060610743611b23565b600201805461075190612eae565b80601f016020809104026020016040519081016040528092919081815260200182805461077d90612eae565b80156107ca5780601f1061079f576101008083540402835291602001916107ca565b820191906000526020600020905b8154815290600101906020018083116107ad57829003601f168201915b5050505050905090565b606960009054906101000a90046001600160a01b03166001600160a01b031663d505accf33308c606d8f8154811061080e5761080e612ee2565b90600052602060002090600602016003015461082a9190612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606481018b905260ff8a16608482015260a4810189905260c4810188905260e401600060405180830381600087803b15801561089757600080fd5b505af11580156108ab573d6000803e3d6000fd5b505050506108be8b8b8b87878787611b47565b5050505050505050505050565b60006108d682611db0565b6108f3576040516333d1c03960e21b815260040160405180910390fd5b6108fb611b23565b60009283526006016020525060409020546001600160a01b031690565b61092482826001611df9565b5050565b610930611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa15801561098a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ae9190612f25565b90925090506001600160a01b0382166109da57604051632627b42d60e11b815260040160405180910390fd5b6069546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610a23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a479190612f53565b90506000612710610a588484612f0e565b610a629190612f6c565b90506000610a708284612f8e565b90508015610b125760695460405163a9059cbb60e01b81526001600160a01b03878116600483015260248201849052600092169063a9059cbb906044016020604051808303816000875af1158015610acc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af09190612fa1565b905080610b1057604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb85760695460685460405163a9059cbb60e01b81526001600160a01b03918216600482015260248101859052600092919091169063a9059cbb906044016020604051808303816000875af1158015610b72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b969190612fa1565b905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b505b5050505050565b60006001610bcb611b23565b60010154610bd7611b23565b540303919050565b6000610bea82611f08565b9050836001600160a01b0316816001600160a01b031614610c1d5760405162a1148160e81b815260040160405180910390fd5b600080610c2984611fb5565b91509150610c4e8187610c393390565b6001600160a01b039081169116811491141790565b610c7957610c5c863361184d565b610c7957604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b038516610ca057604051633a954ecd60e21b815260040160405180910390fd5b610cad8686866001611fdd565b8015610cb857600082555b610cc0611b23565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610cec611b23565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610d23611b23565b60008681526004919091016020526040812091909155600160e11b84169003610d995760018401610d52611b23565b600082815260049190910160205260408120549003610d9757610d73611b23565b548114610d975783610d83611b23565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610bb6565b606d8181548110610def57600080fd5b60009182526020909120600690910201805460018201546002830154600384015460048501546005909501549395509193909260ff1686565b60008051602061343283398151915254610100900460ff16610e5d576000805160206134328339815191525460ff1615610e61565b303b155b610ed85760405162461bcd60e51b815260206004820152603760248201527f455243373231415f5f496e697469616c697a61626c653a20636f6e747261637460448201527f20697320616c726561647920696e697469616c697a656400000000000000000060648201526084015b60405180910390fd5b60008051602061343283398151915254610100900460ff16158015610f1457600080516020613432833981519152805461ffff19166101011790555b600054610100900460ff1615808015610f345750600054600160ff909116105b80610f4e5750303b158015610f4e575060005460ff166001145b610fb15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610ecf565b6000805460ff191660011790558015610fd4576000805461ff0019166101001790555b610fed8360405180602001604052806000815250612064565b610ff56120a2565b610ffe876120d1565b6000606a55606580546001600160a01b038089166001600160a01b031992831617909255606680548884169083161790556067805487841690831617905560688054928a16929091169190911790558015611093576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b508015610bb6575050600080516020613432833981519152805461ff001916905550505050565b6110d583838360405180602001604052806000815250611503565b505050565b6110e987878787878787611b47565b50505050505050565b6110fa611eae565b606c6110d5828483613004565b600061073382611f08565b61111a611eae565b606b55565b60006001600160a01b038216611148576040516323d3ad8160e21b815260040160405180910390fd5b6001600160401b03611158611b23565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b61118f611eae565b61119960006120d1565b565b6111a3611eae565b6110e987878787878787612123565b6060606a546000146111eb576111c9606a54612266565b6040516020016111d991906130c3565b60405160208183030381529060405290505b90565b6111f6611eae565b6069546001600160a01b039081169083160361122557604051632627b42d60e11b815260040160405180910390fd5b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015611272573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d59190612fa1565b8061129f611b23565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61131b611eae565b606d541561132f5761132f606d600061280a565b600081815b818110156114c957600085858381811061135057611350612ee2565b905060c0020180360381019061136691906130ed565b9050838160000151108061137e575060208101518151115b1561139c57604051632627b42d60e11b815260040160405180910390fd5b606d805460018101825560009190915281517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d8600690920291820181905560208301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18d983015560408301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18da83015560608301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18db83015560808301517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dc83015560a0909201517f5006b838207c6a9ae9b84d68f467dd4bb5c305fbfb6b04eab8faaabeec1e18dd909101805460ff191691151591909117905592506114c28161316c565b9050611334565b506040518181527ffda37b53117c5bf84916ece7449890be93cbd2842914c83f4a6864adb618654f9060200160405180910390a150505050565b61150e848484610bdf565b6001600160a01b0383163b156115475761152a848484846122f8565b611547576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b606061155882611db0565b61157557604051632627b42d60e11b815260040160405180910390fd5b600061157f6123e3565b905080516000036115a1576040518060200160405280600081525091506116a2565b60408051600180825281830190925260009160208201818036833701905050905081600183516115d19190612f8e565b815181106115e1576115e1612ee2565b602001015160f81c60f81b816000815181106115ff576115ff612ee2565b60200101906001600160f81b031916908160001a905350604051602f60f81b60208201528190602101604051602081830303815290604052805190602001208160405160200161164f9190613185565b604051602081830303815290604052805190602001200361169b5782611674866123f2565b6040516020016116859291906131a1565b604051602081830303815290604052935061169f565b8293505b50505b50919050565b606a546000036116cb576040516316812a5360e11b815260040160405180910390fd5b6116d6878383612436565b6116df86612496565b6116fc576040516332f7a9d760e21b815260040160405180910390fd5b6000606d878154811061171157611711612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a0820181905290915061180a576066546040516332f1944960e21b81526001600160a01b039091169063cbc65124906117ac908b9030908c908b908b906004016131f9565b602060405180830381865afa1580156117c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ed9190612fa1565b61180a576040516352c973a760e01b815260040160405180910390fd5b85816040015161181a9190612f0e565b3414611839576040516318f4198360e21b815260040160405180910390fd5b6118438887612547565b5050505050505050565b6000611857611b23565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b611892611eae565b6001600160a01b0381166118f75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610ecf565b611900816120d1565b50565b61190b611eae565b606554606854606a5460405163608ebea160e01b81526001600160a01b03928316600482015260248101919091526000928392169063608ebea1906044016040805180830381865afa158015611965573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119899190612f25565b90925090506001600160a01b0382166119b557604051632627b42d60e11b815260040160405180910390fd5b4760006127106119c58484612f0e565b6119cf9190612f6c565b905060006119dd8284612f8e565b90508015611a5b576000856001600160a01b03168260405160006040518083038185875af1925050503d8060008114611a32576040519150601f19603f3d011682016040523d82523d6000602084013e611a37565b606091505b5050905080611a5957604051631fa55c0760e11b815260040160405180910390fd5b505b8115610bb8576068546040516000916001600160a01b03169084908381818185875af1925050503d8060008114611aae576040519150601f19603f3d011682016040523d82523d6000602084013e611ab3565b606091505b5050905080610bb657604051631fa55c0760e11b815260040160405180910390fd5b60006301ffc9a760e01b6001600160e01b031983161480611b0657506380ac58cd60e01b6001600160e01b03198316145b806107335750506001600160e01b031916635b5e139f60e01b1490565b7f2569078dfb4b0305704d3008e7403993ae9601b85f7ae5e742de3de8f8011c4090565b611b52878383612436565b6069546001600160a01b0316611b7b57604051632d1f608d60e11b815260040160405180910390fd5b611b8486612496565b611ba1576040516332f7a9d760e21b815260040160405180910390fd5b6000606d8781548110611bb657611bb6612ee2565b60009182526020918290206040805160c081018252600690930290910180548352600181015493830193909352600283015490820152600382015460608201526004820154608082015260059091015460ff16151560a08201819052909150611caf576066546040516332f1944960e21b81526001600160a01b039091169063cbc6512490611c51908b9030908c908b908b906004016131f9565b602060405180830381865afa158015611c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c929190612fa1565b611caf576040516352c973a760e01b815260040160405180910390fd5b60695460608201516001600160a01b03909116906323b872dd9033903090611cd8908b90612f0e565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015611d2c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d509190612fa1565b611d6d57604051635b88974760e11b815260040160405180910390fd5b6001600160a01b0388166000908152606e602090815260408083208a845290915281208054889290611da0908490613238565b9091555061184390508887612547565b600081600111158015611dca5750611dc6611b23565b5482105b80156107335750600160e01b611dde611b23565b60008481526004919091016020526040902054161592915050565b6000611e0483611107565b90508115611e4357336001600160a01b03821614611e4357611e26813361184d565b611e43576040516367d9dca160e11b815260040160405180910390fd5b83611e4c611b23565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6033546001600160a01b031633146111995760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610ecf565b600081600111611f9c57611f1a611b23565b600083815260049190910160205260408120549150600160e01b82169003611f9c5780600003611f9757611f4c611b23565b548210611f6c57604051636f96cda160e11b815260040160405180910390fd5b611f74611b23565b600019909201600081815260049390930160205260409092205490508015611f6c575b919050565b604051636f96cda160e11b815260040160405180910390fd5b6000806000611fc2611b23565b60009485526006016020525050604090912080549092909150565b606b541561154757606554606854606a54604051634bbfc15d60e11b81526001600160a01b0392831660048201528783166024820152868316604482015260648101919091526084810184905291169063977f82ba9060a401600060405180830381600087803b15801561205057600080fd5b505af1158015611843573d6000803e3d6000fd5b60008051602061343283398151915254610100900460ff166120985760405162461bcd60e51b8152600401610ecf9061324b565b610924828261268f565b600054610100900460ff166120c95760405162461bcd60e51b8152600401610ecf9061329f565b611199612702565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606a5415612144576040516302d1671b60e41b815260040160405180910390fd5b8615801561215a57506001600160a01b03841615155b8061217657506001600160a01b03841615801561217657508615155b1561219457604051632627b42d60e11b815260040160405180910390fd5b60655460685460405163ae98d85760e01b81526001600160a01b03918216600482015286821660248201526000604482015291169063ae98d857906064016020604051808303816000875af11580156121f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122159190612f53565b606a556001600160a01b0383161561224357606980546001600160a01b0319166001600160a01b0385161790555b606b879055606c612255828483613004565b5085156110e9576110e98587612547565b6060600061227383612732565b60010190506000816001600160401b0381111561229257612292612ab2565b6040519080825280601f01601f1916602001820160405280156122bc576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846122c657509392505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a029061232d9033908990889088906004016132ea565b6020604051808303816000875af1925050508015612368575060408051601f3d908101601f1916820190925261236591810190613327565b60015b6123c6573d808015612396576040519150601f19603f3d011682016040523d82523d6000602084013e61239b565b606091505b5080516000036123be576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6060606c805461075190612eae565b606060a06040510180604052602081039150506000815280825b600183039250600a81066030018353600a90048061240c5750819003601f19909101908152919050565b606754604051633cb149af60e21b81526001600160a01b039091169063f2c526bc9061246a90869086908690600401613344565b60006040518083038186803b15801561248257600080fd5b505afa1580156110e9573d6000803e3d6000fd5b606d5460009082106124bb57604051632627b42d60e11b815260040160405180910390fd5b6000606d83815481106124d0576124d0612ee2565b60009182526020918290206040805160c0810182526006909302909101805480845260018201549484019490945260028101549183019190915260038101546060830152600481015460808301526005015460ff16151560a0820152915042108015906125405750428160200151115b9392505050565b6000612551611b23565b54905060008290036125765760405163b562e8dd60e01b815260040160405180910390fd5b6125836000848385611fdd565b680100000000000000018202612597611b23565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b17176125d2611b23565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b81811461265c57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600101612624565b508160000361267d57604051622e076360e81b815260040160405180910390fd5b80612686611b23565b55506110d59050565b60008051602061343283398151915254610100900460ff166126c35760405162461bcd60e51b8152600401610ecf9061324b565b816126cc611b23565b600201906126da9082613372565b50806126e4611b23565b600301906126f29082613372565b5060016126fd611b23565b555050565b600054610100900460ff166127295760405162461bcd60e51b8152600401610ecf9061329f565b611199336120d1565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106127715772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061279d576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106127bb57662386f26fc10000830492506010015b6305f5e10083106127d3576305f5e100830492506008015b61271083106127e757612710830492506004015b606483106127f9576064830492506002015b600a83106107335760010192915050565b508054600082556006029060005260206000209081019061190091905b80821115612862576000808255600182018190556002820181905560038201819055600482015560058101805460ff19169055600601612827565b5090565b6001600160e01b03198116811461190057600080fd5b60006020828403121561288e57600080fd5b813561254081612866565b60005b838110156128b457818101518382015260200161289c565b50506000910152565b600081518084526128d5816020860160208601612899565b601f01601f19169290920160200192915050565b60208152600061254060208301846128bd565b6001600160a01b038116811461190057600080fd5b60008083601f84011261292357600080fd5b5081356001600160401b0381111561293a57600080fd5b60208301915083602082850101111561295257600080fd5b9250929050565b60008060008060008060008060008060006101208c8e03121561297b57600080fd5b6129858c356128fc565b8b359a5060208c0135995060408c0135985060608c0135975060808c013560ff811681146129b257600080fd5b965060a08c0135955060c08c013594506001600160401b0360e08d01358110156129db57600080fd5b6129eb8e60e08f01358f01612911565b90955093506101008d0135811015612a0257600080fd5b50612a148d6101008e01358e01612911565b81935080925050509295989b509295989b9093969950565b600060208284031215612a3e57600080fd5b5035919050565b60008060408385031215612a5857600080fd5b8235612a63816128fc565b946020939093013593505050565b600080600060608486031215612a8657600080fd5b8335612a91816128fc565b92506020840135612aa1816128fc565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115612ae257612ae2612ab2565b604051601f8501601f19908116603f01168101908282118183101715612b0a57612b0a612ab2565b81604052809350858152868686011115612b2357600080fd5b858560208301376000602087830101525050509392505050565b600080600080600060a08688031215612b5557600080fd5b8535612b60816128fc565b94506020860135612b70816128fc565b93506040860135612b80816128fc565b92506060860135612b90816128fc565b915060808601356001600160401b03811115612bab57600080fd5b8601601f81018813612bbc57600080fd5b612bcb88823560208401612ac8565b9150509295509295909350565b600080600080600080600060a0888a031215612bf357600080fd5b8735612bfe816128fc565b9650602088013595506040880135945060608801356001600160401b0380821115612c2857600080fd5b612c348b838c01612911565b909650945060808a0135915080821115612c4d57600080fd5b50612c5a8a828b01612911565b989b979a50959850939692959293505050565b60008060208385031215612c8057600080fd5b82356001600160401b03811115612c9657600080fd5b612ca285828601612911565b90969095509350505050565b600060208284031215612cc057600080fd5b8135612540816128fc565b600080600080600080600060c0888a031215612ce657600080fd5b87359650602088013595506040880135612cff816128fc565b94506060880135612d0f816128fc565b93506080880135612d1f816128fc565b925060a08801356001600160401b03811115612d3a57600080fd5b612c5a8a828b01612911565b801515811461190057600080fd5b60008060408385031215612d6757600080fd5b8235612d72816128fc565b91506020830135612d8281612d46565b809150509250929050565b60008060208385031215612da057600080fd5b82356001600160401b0380821115612db757600080fd5b818501915085601f830112612dcb57600080fd5b813581811115612dda57600080fd5b86602060c083028501011115612def57600080fd5b60209290920196919550909350505050565b60008060008060808587031215612e1757600080fd5b8435612e22816128fc565b93506020850135612e32816128fc565b92506040850135915060608501356001600160401b03811115612e5457600080fd5b8501601f81018713612e6557600080fd5b612e7487823560208401612ac8565b91505092959194509250565b60008060408385031215612e9357600080fd5b8235612e9e816128fc565b91506020830135612d82816128fc565b600181811c90821680612ec257607f821691505b6020821081036116a257634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761073357610733612ef8565b60008060408385031215612f3857600080fd5b8251612f43816128fc565b6020939093015192949293505050565b600060208284031215612f6557600080fd5b5051919050565b600082612f8957634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561073357610733612ef8565b600060208284031215612fb357600080fd5b815161254081612d46565b601f8211156110d557600081815260208120601f850160051c81016020861015612fe55750805b601f850160051c820191505b81811015610bb657828155600101612ff1565b6001600160401b0383111561301b5761301b612ab2565b61302f836130298354612eae565b83612fbe565b6000601f841160018114613063576000851561304b5750838201355b600019600387901b1c1916600186901b178355610bb8565b600083815260209020601f19861690835b828110156130945786850135825560209485019460019092019101613074565b50868210156130b15760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6120a160f11b8152600082516130e0816002850160208701612899565b9190910160020192915050565b600060c082840312156130ff57600080fd5b60405160c081018181106001600160401b038211171561312157613121612ab2565b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013561316081612d46565b60a08201529392505050565b60006001820161317e5761317e612ef8565b5060010190565b60008251613197818460208701612899565b9190910192915050565b600083516131b3818460208801612899565b8351908301906131c7818360208801612899565b01949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6001600160a01b038681168252851660208201526040810184905260806060820181905260009061322d90830184866131d0565b979650505050505050565b8082018082111561073357610733612ef8565b60208082526034908201527f455243373231415f5f496e697469616c697a61626c653a20636f6e7472616374604082015273206973206e6f7420696e697469616c697a696e6760601b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061331d908301846128bd565b9695505050505050565b60006020828403121561333957600080fd5b815161254081612866565b6001600160a01b038416815260406020820181905260009061336990830184866131d0565b95945050505050565b81516001600160401b0381111561338b5761338b612ab2565b61339f816133998454612eae565b84612fbe565b602080601f8311600181146133d457600084156133bc5750858301515b600019600386901b1c1916600185901b178555610bb6565b600085815260208120601f198616915b82811015613403578886015182559484019460019091019084016133e4565b50858210156134215787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056feee151c8401928dc223602bb187aff91b9a56c7cae5476ef1b3287b085a16c85fa2646970667358221220cafa3a7f682c36f07e8cad71c42b1c0e02beaeddb35d76fd32ad310217ab076964736f6c63430008130033", + "nonce": "0x7b", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xa9e4de9145777a32b211c8613f5a993f28b55fc3bef000f8c55f892fe64d3cfe", + "transactionType": "CREATE", + "contractName": "AnotherCloneFactory", + "contractAddress": "0x2375172Ed700d254928784CaFc9C647e94FDb776", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x2bbc44d4449e947d3612c2b16147d9206eaed990", + "gas": "0x1f76b5", + "value": "0x0", + "data": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611b41806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106102115760003560e01c80637d2405bb11610125578063b7dd8d20116100ad578063d547741f1161007c578063d547741f14610494578063d57f966b146104a7578063d8f4b6fd146104b0578063f339b08e146104c5578063fdbda0ec146104d857600080fd5b8063b7dd8d2014610446578063ba4f11c914610459578063bdd2fe781461046c578063cfc5a0c01461047f57600080fd5b80638e837abf116100f45780638e837abf146103f257806391d148541461040557806398eaa0c0146104185780639f1fb80d1461042b578063a217fddf1461043e57600080fd5b80637d2405bb146103a6578063832ca2f5146103b957806385be1c15146103cc5780638d058ac8146103df57600080fd5b806336568abe116101a85780634eb6b7f6116101775780634eb6b7f614610347578063641254bd1461035a578063678213491461036d5780636b7e3949146103805780636cc82b841461039357600080fd5b806336568abe146102fb5780634128541c1461030e57806347fcac3b146103215780634c7dfac31461033457600080fd5b80631ce6e444116101e45780631ce6e444146102915780631e5b3684146102a4578063248a9ca3146102b75780632f2ff15d146102e857600080fd5b806301ffc9a7146102165780631459457a1461023e57806318c25d8a146102535780631c8518c214610266575b600080fd5b61022961022436600461161d565b61050b565b60405190151581526020015b60405180910390f35b61025161024c36600461165e565b610542565b005b6102516102613660046116c3565b6106c3565b609b54610279906001600160a01b031681565b6040516001600160a01b039091168152602001610235565b609a54610279906001600160a01b031681565b6102516102b23660046116ed565b61083d565b6102da6102c53660046116ed565b60009081526065602052604090206001015490565b604051908152602001610235565b6102516102f6366004611706565b6108ef565b610251610309366004611706565b610914565b609854610279906001600160a01b031681565b61027961032f3660046116c3565b610992565b610229610342366004611732565b6109a6565b609e54610279906001600160a01b031681565b610251610368366004611732565b6109c0565b61025161037b36600461174d565b6109ee565b61025161038e366004611732565b610ad6565b609954610279906001600160a01b031681565b6102516103b4366004611732565b610b06565b6102516103c7366004611732565b610b34565b6102516103da366004611706565b610b62565b6102796103ed3660046116ed565b610be8565b610251610400366004611732565b610c02565b610229610413366004611706565b610c30565b610279610426366004611789565b610c5b565b61025161043936600461184e565b610c8f565b6102da600081565b6102516104543660046118b4565b610dc0565b6102da610467366004611732565b610e94565b609c54610279906001600160a01b031681565b6102da600080516020611acc83398151915281565b6102516104a2366004611706565b610f32565b6102da609d5481565b6102da600080516020611aec83398151915281565b6102796104d33660046116ed565b610f57565b6104eb6104e63660046116ed565b610f81565b604080516001600160a01b03938416815292909116602083015201610235565b60006001600160e01b03198216637965db0b60e01b148061053c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600054610100900460ff16158080156105625750600054600160ff909116105b8061057c5750303b15801561057c575060005460ff166001145b6105e45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610607576000805461ff0019166101001790555b609880546001600160a01b03199081166001600160a01b0389811691909117909255609980548216888416179055609a80548216878416179055609b80548216868416179055609c80549091169184169190911790556000609d5561066a610fba565b610675600033611027565b80156106bb576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b600080516020611acc8339815191526106db81611031565b6127108211156106fe57604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b03831661072557604051632627b42d60e11b815260040160405180910390fd5b609c5460009061073d906001600160a01b031661103e565b609854609e5460405163c0c53b8b60e01b81526001600160a01b0388811660048301529283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b15801561079957600080fd5b505af11580156107ad573d6000803e3d6000fd5b5050609854604051638353b91960e01b81526001600160a01b0388811660048301528581166024830152604482018890529091169250638353b9199150606401600060405180830381600087803b15801561080757600080fd5b505af115801561081b573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856110d8565b50505050565b600080516020611aec83398151915261085581611031565b609b5460009061086e906001600160a01b03168461115e565b60985460995460405163c0c53b8b60e01b81523360048201526001600160a01b039283166024820152908216604482015291925082169063c0c53b8b90606401600060405180830381600087803b1580156108c857600080fd5b505af11580156108dc573d6000803e3d6000fd5b505050506108ea81336111fb565b505050565b60008281526065602052604090206001015461090a81611031565b6108ea83836110d8565b6001600160a01b03811633146109845760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016105db565b61098e8282611353565b5050565b600061099f8383306113ba565b9392505050565b600061053c600080516020611aec83398151915283610c30565b60006109cb81611031565b50609a80546001600160a01b0319166001600160a01b0392909216919091179055565b600080516020611acc833981519152610a0681611031565b612710821115610a2957604051632627b42d60e11b815260040160405180910390fd5b6001600160a01b038416610a5057604051632627b42d60e11b815260040160405180910390fd5b609854604051638353b91960e01b81526001600160a01b03868116600483015285811660248301526044820185905290911690638353b91990606401600060405180830381600087803b158015610aa657600080fd5b505af1158015610aba573d6000803e3d6000fd5b50505050610837600080516020611aec833981519152856108ef565b600080516020611acc833981519152610aee81611031565b61098e600080516020611aec83398151915283610f32565b6000610b1181611031565b50609b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b3f81611031565b50609c80546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b6d81611031565b81609f8481548110610b8157610b81611904565b60009182526020918290200180546001600160a01b0319166001600160a01b0393841617905560408051868152928516918301919091527f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a1505050565b609b5460009061053c906001600160a01b031683306113ba565b6000610c0d81611031565b50609e80546001600160a01b0319166001600160a01b0392909216919091179055565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600061099f609f8481548110610c7357610c73611904565b6000918252602090912001546001600160a01b031683306113ba565b600080516020611acc833981519152610ca781611031565b609854604051630830b35960e31b81526001600160a01b038681166004830152909116906341859ac890602401602060405180830381865afa158015610cf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d15919061191a565b610d3257604051634f3bd42760e01b815260040160405180910390fd5b6000610d3e868461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610d84948c9491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610d9e57600080fd5b505af1158015610db2573d6000803e3d6000fd5b505050506106bb81866111fb565b600080516020611aec833981519152610dd881611031565b6000610e0b609f8681548110610df057610df0611904565b6000918252602090912001546001600160a01b03168461115e565b609854609954609e54604051632fb3b36160e01b81529394506001600160a01b0380861694632fb3b36194610e5194339491841693908116929116908b9060040161198c565b600060405180830381600087803b158015610e6b57600080fd5b505af1158015610e7f573d6000803e3d6000fd5b50505050610e8d81336111fb565b5050505050565b600080610ea081611031565b609f80546001810182556000919091527f0bc14066c33013fe88f66e314e4cf150b0b2d4d6451a1a51dbbd1c27cd11de28810180546001600160a01b0319166001600160a01b0386169081179091556040805183815260208101929092529193507f8db5733d0a1ed622331bb650d4cb48e8d3404bd3d09ba5b7d6c18c0097c1c0d3910160405180910390a150919050565b600082815260656020526040902060010154610f4d81611031565b6108ea8383611353565b609f8181548110610f6757600080fd5b6000918252602090912001546001600160a01b0316905081565b60978181548110610f9157600080fd5b6000918252602090912060029091020180546001909101546001600160a01b0391821692501682565b600054610100900460ff166110255760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016105db565b565b61098e82826110d8565b61103b8133611416565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b0381166110d35760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b60448201526064016105db565b919050565b6110e28282610c30565b61098e5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561111a3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b03811661053c5760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c656400000000000000000060448201526064016105db565b6040805180820182526001600160a01b0380851682528381166020830190815260978054600181018255600091909152925160029093027f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ff9810180549484166001600160a01b031995861617905590517f354a83ed9988f79f6038d4c7a7dadbad8af32f4ad6df893e0e5807a1b1944ffa9091018054918316919093161790915560985491516331c3aba360e21b815291169063c70eae8c906112d19085906004016001600160a01b0391909116815260200190565b600060405180830381600087803b1580156112eb57600080fd5b505af11580156112ff573d6000803e3d6000fd5b50505050609d60008154611312906119e9565b909155506040516001600160a01b0380831691908416907f5d0de243db1669e3a7056744cd715c625f0c1c348736c2c2d53d0ddebff1a6c790600090a35050565b61135d8282610c30565b1561098e5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60405160388101919091526f5af43d82803e903d91602b57fd5bf3ff60248201526014810192909252733d602d80600a3d3981f3363d3d373d3d3d363d73825260588201526037600c8201206078820152605560439091012090565b6114208282610c30565b61098e5761142d8161146f565b611438836020611481565b604051602001611449929190611a02565b60408051601f198184030181529082905262461bcd60e51b82526105db91600401611a77565b606061053c6001600160a01b03831660145b60606000611490836002611a8a565b61149b906002611aa1565b67ffffffffffffffff8111156114b3576114b36117ab565b6040519080825280601f01601f1916602001820160405280156114dd576020820181803683370190505b509050600360fc1b816000815181106114f8576114f8611904565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061152757611527611904565b60200101906001600160f81b031916908160001a905350600061154b846002611a8a565b611556906001611aa1565b90505b60018111156115ce576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061158a5761158a611904565b1a60f81b8282815181106115a0576115a0611904565b60200101906001600160f81b031916908160001a90535060049490941c936115c781611ab4565b9050611559565b50831561099f5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016105db565b60006020828403121561162f57600080fd5b81356001600160e01b03198116811461099f57600080fd5b80356001600160a01b03811681146110d357600080fd5b600080600080600060a0868803121561167657600080fd5b61167f86611647565b945061168d60208701611647565b935061169b60408701611647565b92506116a960608701611647565b91506116b760808701611647565b90509295509295909350565b600080604083850312156116d657600080fd5b6116df83611647565b946020939093013593505050565b6000602082840312156116ff57600080fd5b5035919050565b6000806040838503121561171957600080fd5b8235915061172960208401611647565b90509250929050565b60006020828403121561174457600080fd5b61099f82611647565b60008060006060848603121561176257600080fd5b61176b84611647565b925061177960208501611647565b9150604084013590509250925092565b6000806040838503121561179c57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126117d257600080fd5b813567ffffffffffffffff808211156117ed576117ed6117ab565b604051601f8301601f19908116603f01168101908282118183101715611815576118156117ab565b8160405283815286602085880101111561182e57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561186457600080fd5b61186d85611647565b935061187b60208601611647565b9250604085013567ffffffffffffffff81111561189757600080fd5b6118a3878288016117c1565b949793965093946060013593505050565b6000806000606084860312156118c957600080fd5b83359250602084013567ffffffffffffffff8111156118e757600080fd5b6118f3868287016117c1565b925050604084013590509250925092565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561192c57600080fd5b8151801515811461099f57600080fd5b60005b8381101561195757818101518382015260200161193f565b50506000910152565b6000815180845261197881602086016020860161193c565b601f01601f19169290920160200192915050565b6001600160a01b038681168252858116602083015284811660408301528316606082015260a0608082018190526000906119c890830184611960565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016119fb576119fb6119d3565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611a3a81601785016020880161193c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611a6b81602884016020880161193c565b01602801949350505050565b60208152600061099f6020830184611960565b808202811582820484141761053c5761053c6119d3565b8082018082111561053c5761053c6119d3565b600081611ac357611ac36119d3565b50600019019056fe2ceaf29507f118cd1f62635058556b732f02f44e3a3a133e73c60008a777fd3e0ac90c257048ef1c3e387c26d4a99bde06894efbcbff862dc1885c3a9319308aa2646970667358221220906cbaa757902a4ee379e641d3c2abcc38d848ac202ab2a5a6f4bef0d176c88c64736f6c63430008130033", + "nonce": "0x7c", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0x27a3a89a8803b9be85659957a47d161c0cd459a98524f62934ffd06bab1abdb6", + "transactionIndex": "0x6", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x1188ee", + "gasUsed": "0xbaf26", + "contractAddress": "0xdC8B3030E54e88F08Ca01B842448fdcE9b511CdB", + "logs": [ + { + "address": "0xdC8B3030E54e88F08Ca01B842448fdcE9b511CdB", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x27a3a89a8803b9be85659957a47d161c0cd459a98524f62934ffd06bab1abdb6", + "transactionIndex": "0x6", + "logIndex": "0x6", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + }, + { + "transactionHash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionIndex": "0x7", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x1b6e70", + "gasUsed": "0x9e582", + "contractAddress": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "logs": [ + { + "address": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "topics": [ + "0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", + "0x000000000000000000000000dc8b3030e54e88f08ca01b842448fdce9b511cdb" + ], + "data": "0x", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionIndex": "0x7", + "logIndex": "0x7", + "removed": false + }, + { + "address": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "topics": [ + "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", + "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000002bbc44d4449e947d3612c2b16147d9206eaed990", + "0x0000000000000000000000002bbc44d4449e947d3612c2b16147d9206eaed990" + ], + "data": "0x", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionIndex": "0x7", + "logIndex": "0x8", + "removed": false + }, + { + "address": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionIndex": "0x7", + "logIndex": "0x9", + "removed": false + }, + { + "address": "0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601", + "topics": [ + "0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000003934000d33f8b4df78ba0d3cdfa61e620580822c", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x09b4966d935f8207768b6621ea0c62eaea6c9d19d74719303d59c6acf3982f13", + "transactionIndex": "0x7", + "logIndex": "0xa", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000004000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000002000000000000000000000000000000000020000000020000000000000000800800000040800000000000000800000000000000000000000000000000000000040000000000000080000000000000800000002000000000000000000000000400000000000000000000001000000000000000000020800000000000000000040000000000000400000100000080000020000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + }, + { + "transactionHash": "0x7b2fed735f4906d188df5cdece043a45ef7071f49df64b204b3c450f07c6aae1", + "transactionIndex": "0x8", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x3dca22", + "gasUsed": "0x225bb2", + "contractAddress": "0x65B7B3f5c5b01f06D3D5545d72e6962AD664F999", + "logs": [ + { + "address": "0x65B7B3f5c5b01f06D3D5545d72e6962AD664F999", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x7b2fed735f4906d188df5cdece043a45ef7071f49df64b204b3c450f07c6aae1", + "transactionIndex": "0x8", + "logIndex": "0xb", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000800000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + }, + { + "transactionHash": "0xc28eb86e2b16cf9a9e0d2895ab823e10e3c7d636c04d00cbe3bb281adcdeb6b3", + "transactionIndex": "0x9", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x6cc8b4", + "gasUsed": "0x2efe92", + "contractAddress": "0x16d48a7B9D48C0a1ec51DcCB9AACa3a9317bd78C", + "logs": [ + { + "address": "0x16d48a7B9D48C0a1ec51DcCB9AACa3a9317bd78C", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0xc28eb86e2b16cf9a9e0d2895ab823e10e3c7d636c04d00cbe3bb281adcdeb6b3", + "transactionIndex": "0x9", + "logIndex": "0xc", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000020000001000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + }, + { + "transactionHash": "0x1c4ddc83ae8554a8877368d5090e660be65fdc65cebd3abf173721263322dadc", + "transactionIndex": "0xa", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x9a4dbf", + "gasUsed": "0x2d850b", + "contractAddress": "0xD0aA9747B3BA7418456d58e5e1D21aB8F2ba4f87", + "logs": [ + { + "address": "0xD0aA9747B3BA7418456d58e5e1D21aB8F2ba4f87", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0x94b64389b1b78e4da51cabedfb12da218f3813fd087ae9f3880c6d6b69aa078b", + "blockNumber": "0x8a1fc0", + "transactionHash": "0x1c4ddc83ae8554a8877368d5090e660be65fdc65cebd3abf173721263322dadc", + "transactionIndex": "0xa", + "logIndex": "0xd", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000001000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + }, + { + "transactionHash": "0xa9e4de9145777a32b211c8613f5a993f28b55fc3bef000f8c55f892fe64d3cfe", + "transactionIndex": "0x7", + "blockHash": "0xf8a910a3804350fa674790ef6fdf66ee43183fe802b473b3cc6721e16f3c22b0", + "blockNumber": "0x8a1fc1", + "from": "0x2BBC44D4449e947d3612C2b16147d9206eaeD990", + "to": null, + "cumulativeGasUsed": "0x267233", + "gasUsed": "0x1833ee", + "contractAddress": "0x2375172Ed700d254928784CaFc9C647e94FDb776", + "logs": [ + { + "address": "0x2375172Ed700d254928784CaFc9C647e94FDb776", + "topics": [ + "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498" + ], + "data": "0x00000000000000000000000000000000000000000000000000000000000000ff", + "blockHash": "0xf8a910a3804350fa674790ef6fdf66ee43183fe802b473b3cc6721e16f3c22b0", + "blockNumber": "0x8a1fc1", + "transactionHash": "0xa9e4de9145777a32b211c8613f5a993f28b55fc3bef000f8c55f892fe64d3cfe", + "transactionIndex": "0x7", + "logIndex": "0xe", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000", + "type": "0x2", + "effectiveGasPrice": "0x159" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1704893543, + "chain": 8453, + "multi": false, + "commit": "9d351c5" +} \ No newline at end of file diff --git a/deployment/8453/ABKYCModule/address b/deployment/8453/ABKYCModule/address index e69de29..631c369 100644 --- a/deployment/8453/ABKYCModule/address +++ b/deployment/8453/ABKYCModule/address @@ -0,0 +1 @@ +0xF2ACf4e056Cab456182D1b0Dc66d0DB773467601 \ No newline at end of file diff --git a/forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-1704893245.json b/forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-1704893245.json new file mode 100644 index 0000000..77a60ef --- /dev/null +++ b/forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-1704893245.json @@ -0,0 +1,22 @@ +{ + "transactions": [ + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-1704893447.json b/forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-1704893447.json new file mode 100644 index 0000000..77a60ef --- /dev/null +++ b/forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-1704893447.json @@ -0,0 +1,22 @@ +{ + "transactions": [ + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-latest.json b/forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-latest.json new file mode 100644 index 0000000..77a60ef --- /dev/null +++ b/forge-cache/deploy-v1_2.s.sol/8453/dry-run/run-latest.json @@ -0,0 +1,22 @@ +{ + "transactions": [ + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-v1_2.s.sol/8453/run-1704893536.json b/forge-cache/deploy-v1_2.s.sol/8453/run-1704893536.json new file mode 100644 index 0000000..77a60ef --- /dev/null +++ b/forge-cache/deploy-v1_2.s.sol/8453/run-1704893536.json @@ -0,0 +1,22 @@ +{ + "transactions": [ + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-v1_2.s.sol/8453/run-1704893543.json b/forge-cache/deploy-v1_2.s.sol/8453/run-1704893543.json new file mode 100644 index 0000000..77a60ef --- /dev/null +++ b/forge-cache/deploy-v1_2.s.sol/8453/run-1704893543.json @@ -0,0 +1,22 @@ +{ + "transactions": [ + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + } + ] +} \ No newline at end of file diff --git a/forge-cache/deploy-v1_2.s.sol/8453/run-latest.json b/forge-cache/deploy-v1_2.s.sol/8453/run-latest.json new file mode 100644 index 0000000..77a60ef --- /dev/null +++ b/forge-cache/deploy-v1_2.s.sol/8453/run-latest.json @@ -0,0 +1,22 @@ +{ + "transactions": [ + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + }, + { + "rpc": "https://base-mainnet.g.alchemy.com/v2/3T4143iXWznOKeQ7DsEBBD2_qfDVydML" + } + ] +} \ No newline at end of file diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index d0ae584..7b23ca8 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -1 +1 @@ -{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1680596959844,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1686130554341,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1680596959845,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1680596959845,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1680596959845,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1680596960583,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685431596392,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1680596959867,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685431596392,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685431596392,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685431596392,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1680596959868,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1680596959868,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1680596959868,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1680596959868,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1680596959868,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1680596959868,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1701338065645,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1680596959868,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685431596392,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1680596959868,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685431596393,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1680596959869,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685431596444,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1680596960619,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685431596455,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685431596455,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1680596960628,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685431596455,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685431596455,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596455,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1686297155172,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685431596456,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1680596960629,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1680596960629,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1680596960630,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1680596960630,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1680596960631,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685431596458,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685431596458,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1680596960632,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1680596960633,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685431596459,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1680596960634,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1680596960634,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685431596460,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1680596960634,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685431596460,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685431596461,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685431596461,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685431596461,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685431596462,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1680596960636,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685431596462,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1680596962383,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596555,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1686313924066,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1680596962399,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685431596555,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1680596962400,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685431596559,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1680596962405,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685431596560,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685431596561,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685431596647,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685431596647,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1680596963987,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685431596647,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685431596648,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685431596648,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1680596963987,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1680596963987,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1680596963987,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1680596963988,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1680596963989,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1680596963989,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685431596649,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1680596963992,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1680596963992,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1680596963992,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1702891363599,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870138,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1702891363599,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1702891363600,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1702891363600,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1702891363594,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1695374870137,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1702891363595,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-erc20mint.s.sol":{"lastModificationDate":1702892940048,"contentHash":"4989901eb9093ae500afcafe3e7a005c","sourceName":"script/base-goerli/deploy-kyc-erc20mint.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-erc20mint.s.sol/DeployKYCERC20.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1702894399536,"contentHash":"100e33853613334c2e176a372f68c7bf","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1702891363596,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1695374870138,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1702891363597,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702891363597,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649097,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702891363598,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649097,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1702891363600,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1702370649098,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1702891363601,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1702370649098,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1693465366217,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1702891363601,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1695374870139,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1702384457164,"contentHash":"ff3cf727aba778ed6bd91876589bce0d","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1702370649100,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1702370649100,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1702384397802,"contentHash":"9afaf557e827e746bf4e6e90c88fbafc","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1702370649101,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1702370649102,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1702370649103,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1702370649103,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1702370649103,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1702370649104,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"01daae19991c3d298a84da11cea6a548","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1702370649105,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1702893194261,"contentHash":"65412e9bc6f0764bc78b283d2e1af36c","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1699523979384,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1702370649106,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1702893241256,"contentHash":"4fbc1efff48937c20859fb673ba4ff0a","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1695374870143,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1693465366219,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1693465366220,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1693465366220,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1695374870143,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1693465366220,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1695374870144,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1702370649107,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1702370649107,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1702370649108,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1702891363610,"contentHash":"bee41342f6760fa179590adf1e84d1e2","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1702891363611,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1702891363611,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1702891363612,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1702891363612,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1702370649112,"contentHash":"c9efb686599e96d0f106725bb622c2b2","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1702891363613,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file +{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1680596959844,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1686130554341,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1680596959845,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1680596959845,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1680596959845,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1680596960583,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685431596392,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1680596959867,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685431596392,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685431596392,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685431596392,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1680596959868,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1680596959868,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1680596959868,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1680596959868,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1680596959868,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1680596959868,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1701338065645,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1680596959868,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685431596392,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1680596959868,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685431596393,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1680596959869,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685431596444,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1680596960619,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685431596455,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685431596455,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1680596960627,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1680596960628,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685431596455,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685431596455,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596455,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1686297155172,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685431596456,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1680596960629,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1680596960629,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1680596960630,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1680596960630,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685431596456,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1680596960631,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685431596458,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685431596458,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685431596458,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1680596960632,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1680596960633,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685431596459,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1680596960634,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1680596960634,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685431596460,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1680596960634,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685431596460,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685431596461,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685431596461,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1680596960636,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685431596461,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685431596462,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1680596960636,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685431596462,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1680596962383,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685431596544,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685431596555,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1686313924066,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1680596962399,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685431596555,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1680596962400,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685431596559,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1680596962405,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685431596560,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1680596962406,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685431596561,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685431596647,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1680596963986,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685431596647,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1680596963987,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685431596647,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685431596648,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685431596648,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1680596963987,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1680596963987,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1680596963987,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1680596963988,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1680596963988,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1680596963989,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1680596963989,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685431596649,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1680596963992,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1680596963992,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1680596963992,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1704461974959,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1704461974959,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1704461974959,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1704461974960,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1704461974960,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1704461974961,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base/deploy-v1_2.s.sol":{"lastModificationDate":1704893472467,"contentHash":"865259a3eaf01bcc00eacefbbe543e1a","sourceName":"script/base/deploy-v1_2.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployV1_2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_2.s.sol/DeployV1_2.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1704891576248,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1704461974955,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1704461974956,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1704794075532,"contentHash":"877224e40600e12b439705f29ee8cc50","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1704461974956,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1704461974957,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1704461974958,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1704794075533,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1704794075533,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1704794075534,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1704794075534,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1704794075534,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1704794075534,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1704794075534,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1704794075534,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1704461974962,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1704461974962,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1704461974964,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1704794075535,"contentHash":"ff3cf727aba778ed6bd91876589bce0d","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1704794075535,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1704794075535,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1704794075535,"contentHash":"9afaf557e827e746bf4e6e90c88fbafc","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1704794075536,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1704794075536,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1704794075537,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1704794075537,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1704794075537,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1704794075538,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1704462172223,"contentHash":"01daae19991c3d298a84da11cea6a548","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1704794075538,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1704461974969,"contentHash":"65412e9bc6f0764bc78b283d2e1af36c","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1704461974970,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1704794075538,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1704461974970,"contentHash":"4fbc1efff48937c20859fb673ba4ff0a","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1695374870143,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1704461974971,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1693465366220,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1693465366220,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1695374870143,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1693465366220,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1695374870144,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1704794075538,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1704794075538,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1704794075539,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1704894994382,"contentHash":"b866e35714269557b31f852412e26046","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1704794075539,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1704794075540,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1704794075540,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1704794075541,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1704794075541,"contentHash":"c9efb686599e96d0f106725bb622c2b2","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1704461974975,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file diff --git a/script/base/deploy-v1_2.s.sol b/script/base/deploy-v1_2.s.sol index d3ef04d..81b5755 100644 --- a/script/base/deploy-v1_2.s.sol +++ b/script/base/deploy-v1_2.s.sol @@ -1,6 +1,6 @@ /* -forge script script/base/deploy-1_2.s.sol --rpc-url base --sig "run(bool)" true -forge script script/base/deploy-1_2.s.sol --rpc-url base --sig "run(bool)" false --broadcast --verify +op run --env-file=".env" -- forge script script/base/deploy-v1_2.s.sol --rpc-url base --sig "run(bool)" true --gas-price 345 --base-fee 50 --with-gas-price 345 +op run --env-file=".env" -- forge script script/base/deploy-v1_2.s.sol --rpc-url base --sig "run(bool)" false --broadcast --verify --gas-price 345 --base-fee 50 --with-gas-price 345 */ // SPDX-License-Identifier: MIT @@ -17,7 +17,7 @@ import {ERC721ABOE} from "src/token/ERC721/ERC721ABOE.sol"; import {ERC721ABLE} from "src/token/ERC721/ERC721ABLE.sol"; import {AnotherCloneFactory} from "src/factory/AnotherCloneFactory.sol"; -contract DeployKYCUpgrade is Script { +contract DeployV1_2 is Script { string public constant KYC_MODULE_PATH = "deployment/8453/ABKYCModule/address"; string public constant PROXY_ADMIN_PATH = "deployment/8453/ProxyAdmin/address"; @@ -76,9 +76,9 @@ contract DeployKYCUpgrade is Script { /* TODO Manually (with multisig): -1 - Upgrade AnotherCloneFactory Proxy with new implementation +1 - Upgrade AnotherCloneFactory Proxy with new implementation 2 - Set ABKYCModule contracts address in AnotherCloneFactory -3 - approve ERC721 Open Edition implementation -4 - approve ERC721 Limited Edition implementation +3 - approve ERC721 Limited Edition implementation +4 - approve ERC721 Open Edition implementation 5 - set new royalty implementation */ From 919da21dd95ccf6c44b2eb32bf2f9db57ab6ae33 Mon Sep 17 00:00:00 2001 From: Pilou <76021631+0xPilou@users.noreply.github.com> Date: Fri, 12 Jan 2024 10:31:28 +0100 Subject: [PATCH 74/74] added fuzz param check to unit test --- forge-cache/solidity-files-cache.json | 7982 +------------------------ test/utils/ABDataRegistry.t.sol | 11 +- 2 files changed, 6 insertions(+), 7987 deletions(-) diff --git a/forge-cache/solidity-files-cache.json b/forge-cache/solidity-files-cache.json index 0f25165..e63cef4 100644 --- a/forge-cache/solidity-files-cache.json +++ b/forge-cache/solidity-files-cache.json @@ -1,7981 +1 @@ -{ - "_format": "ethers-rs-sol-cache-3", - "paths": { - "artifacts": "out", - "build_infos": "out/build-info", - "sources": "src", - "tests": "test", - "scripts": "script", - "libraries": [ - "lib" - ] - }, - "files": { - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol": { - "lastModificationDate": 1685365984533, - "contentHash": "2bebb9fb7b7e001916c833eb49ff74d3", - "sourceName": "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC721AStorage": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721AStorage.sol/ERC721AStorage.json" - } - } - }, - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol": { - "lastModificationDate": 1685365984533, - "contentHash": "f8ce3ae749d925b4eee03832f3ce8ed7", - "sourceName": "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol" - ], - "versionRequirement": "^0.8.4", - "artifacts": { - "ERC721AUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721AUpgradeable.sol/ERC721AUpgradeable.json" - }, - "ERC721A__IERC721ReceiverUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json" - } - } - }, - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol": { - "lastModificationDate": 1685365984533, - "contentHash": "0fa43fa21f853e3f8f65edb747c92c4e", - "sourceName": "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC721A__Initializable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721A__Initializable.sol/ERC721A__Initializable.json" - } - } - }, - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol": { - "lastModificationDate": 1685365984533, - "contentHash": "5fabc57a19d6e51af472028bb7022279", - "sourceName": "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC721A__InitializableStorage": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json" - } - } - }, - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol": { - "lastModificationDate": 1685365984533, - "contentHash": "f047c91056b779f8c57cd0f6addfc6d2", - "sourceName": "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.4", - "artifacts": { - "IERC721AUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC721AUpgradeable.sol/IERC721AUpgradeable.json" - } - } - }, - "lib/forge-std/lib/ds-test/src/test.sol": { - "lastModificationDate": 1685365985360, - "contentHash": "abdafe4b187f548ef0145173f5b93247", - "sourceName": "lib/forge-std/lib/ds-test/src/test.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.5.0", - "artifacts": { - "DSTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "test.sol/DSTest.json" - } - } - }, - "lib/forge-std/src/Base.sol": { - "lastModificationDate": 1685365984591, - "contentHash": "8f04bbbb2c16f79e14fdc321695a8ec2", - "sourceName": "lib/forge-std/src/Base.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "CommonBase": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Base.sol/CommonBase.json" - }, - "ScriptBase": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Base.sol/ScriptBase.json" - }, - "TestBase": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Base.sol/TestBase.json" - } - } - }, - "lib/forge-std/src/Script.sol": { - "lastModificationDate": 1685365984591, - "contentHash": "83c39354c1e43190bce4dc43860dc786", - "sourceName": "lib/forge-std/src/Script.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "Script": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Script.sol/Script.json" - } - } - }, - "lib/forge-std/src/StdAssertions.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "9de0f799a1b1664749ddd6ce6492eae1", - "sourceName": "lib/forge-std/src/StdAssertions.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/StdMath.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "StdAssertions": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdAssertions.sol/StdAssertions.json" - } - } - }, - "lib/forge-std/src/StdChains.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "f73fef006f384b898c755b0e404b84a2", - "sourceName": "lib/forge-std/src/StdChains.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "StdChains": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdChains.sol/StdChains.json" - } - } - }, - "lib/forge-std/src/StdCheats.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "77e0d7b6fd1fb0b20dc96c166f2d8e8c", - "sourceName": "lib/forge-std/src/StdCheats.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "StdCheats": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdCheats.sol/StdCheats.json" - }, - "StdCheatsSafe": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdCheats.sol/StdCheatsSafe.json" - } - } - }, - "lib/forge-std/src/StdError.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "64c896e1276a291776e5ea5aecb3870a", - "sourceName": "lib/forge-std/src/StdError.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "stdError": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdError.sol/stdError.json" - } - } - }, - "lib/forge-std/src/StdInvariant.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "12c06010ec43ce935ed209d5aca30828", - "sourceName": "lib/forge-std/src/StdInvariant.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "StdInvariant": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdInvariant.sol/StdInvariant.json" - } - } - }, - "lib/forge-std/src/StdJson.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "2e1d13674e152408867795362d833c24", - "sourceName": "lib/forge-std/src/StdJson.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.6.0, <0.9.0", - "artifacts": { - "stdJson": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdJson.sol/stdJson.json" - } - } - }, - "lib/forge-std/src/StdMath.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "9da8f453eba6bb98f3d75bc6822bfb29", - "sourceName": "lib/forge-std/src/StdMath.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "stdMath": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdMath.sol/stdMath.json" - } - } - }, - "lib/forge-std/src/StdStorage.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "3cb9868082df39a53927db09dbc21f23", - "sourceName": "lib/forge-std/src/StdStorage.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "stdStorage": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdStorage.sol/stdStorage.json" - }, - "stdStorageSafe": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdStorage.sol/stdStorageSafe.json" - } - } - }, - "lib/forge-std/src/StdStyle.sol": { - "lastModificationDate": 1685365984592, - "contentHash": "820e6f6b7704f0c980fae604b1e34b18", - "sourceName": "lib/forge-std/src/StdStyle.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Vm.sol" - ], - "versionRequirement": ">=0.4.22, <0.9.0", - "artifacts": { - "StdStyle": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdStyle.sol/StdStyle.json" - } - } - }, - "lib/forge-std/src/StdUtils.sol": { - "lastModificationDate": 1685365984593, - "contentHash": "45fc08daaa17b7908fa5de7d758d8c86", - "sourceName": "lib/forge-std/src/StdUtils.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "StdUtils": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StdUtils.sol/StdUtils.json" - } - } - }, - "lib/forge-std/src/Test.sol": { - "lastModificationDate": 1685365984593, - "contentHash": "bc9d74a0c612e1c2b66cca2973bcc803", - "sourceName": "lib/forge-std/src/Test.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol" - ], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "Test": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Test.sol/Test.json" - } - } - }, - "lib/forge-std/src/Vm.sol": { - "lastModificationDate": 1685365984593, - "contentHash": "f4eae1ed3732746674ff1a4c48c0be05", - "sourceName": "lib/forge-std/src/Vm.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "Vm": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Vm.sol/Vm.json" - }, - "VmSafe": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Vm.sol/VmSafe.json" - } - } - }, - "lib/forge-std/src/console.sol": { - "lastModificationDate": 1685365984593, - "contentHash": "100b8a33b917da1147740d7ab8b0ded3", - "sourceName": "lib/forge-std/src/console.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.4.22, <0.9.0", - "artifacts": { - "console": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "console.sol/console.json" - } - } - }, - "lib/forge-std/src/console2.sol": { - "lastModificationDate": 1685365984593, - "contentHash": "2096b4e5f252c5df9909cccbe3d2da2e", - "sourceName": "lib/forge-std/src/console2.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.4.22, <0.9.0", - "artifacts": { - "console2": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "console2.sol/console2.json" - } - } - }, - "lib/forge-std/src/interfaces/IMulticall3.sol": { - "lastModificationDate": 1685365984594, - "contentHash": "7b131ca1ca32ef6378b7b9ad5488b901", - "sourceName": "lib/forge-std/src/interfaces/IMulticall3.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": ">=0.6.2, <0.9.0", - "artifacts": { - "IMulticall3": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IMulticall3.sol/IMulticall3.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/access/Ownable.sol": { - "lastModificationDate": 1685365985432, - "contentHash": "e436cea06129be2c73cda4b1acc848b5", - "sourceName": "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/Context.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "Ownable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Ownable.sol/Ownable.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol": { - "lastModificationDate": 1685365985437, - "contentHash": "2858d98e74e67987ec81b39605230b74", - "sourceName": "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1822Proxiable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "draft-IERC1822.sol/IERC1822Proxiable.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol": { - "lastModificationDate": 1685365985446, - "contentHash": "11535a839f5494023c396098504f5646", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "Clones": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Clones.sol/Clones.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol": { - "lastModificationDate": 1685365985446, - "contentHash": "3fc3c7c0a2956f36e766691bb9473b06", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC1967Proxy": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1967Proxy.sol/ERC1967Proxy.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol": { - "lastModificationDate": 1685365985447, - "contentHash": "6baa887a798e95b14f34e093f117e9b2", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol" - ], - "versionRequirement": "^0.8.2", - "artifacts": { - "ERC1967Upgrade": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1967Upgrade.sol/ERC1967Upgrade.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol": { - "lastModificationDate": 1685365985447, - "contentHash": "40b3d81a836d50ff47e03893dcaaf204", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "Proxy": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Proxy.sol/Proxy.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol": { - "lastModificationDate": 1685365985447, - "contentHash": "b6bd23bf19e90b771337037706470933", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IBeacon": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IBeacon.sol/IBeacon.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol": { - "lastModificationDate": 1685365985447, - "contentHash": "a947492251ac15d6bfd899c9fdb4d82b", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ProxyAdmin": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ProxyAdmin.sol/ProxyAdmin.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol": { - "lastModificationDate": 1685365985447, - "contentHash": "ea48b4a63fd733eec048191be006daa8", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "TransparentUpgradeableProxy": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol": { - "lastModificationDate": 1685365985448, - "contentHash": "19c4fbc3e825d25231b09f13aff9a2b2", - "sourceName": "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/Address.sol" - ], - "versionRequirement": "^0.8.2", - "artifacts": { - "Initializable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "proxy/utils/Initializable.sol/Initializable.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol": { - "lastModificationDate": 1685365985448, - "contentHash": "447816f3d93d639006eb423c33d2ca2c", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC1155": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155.sol/ERC1155.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol": { - "lastModificationDate": 1685365985449, - "contentHash": "d5a8f6e07ca38ec384856cfe9f08a867", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155.sol/IERC1155.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol": { - "lastModificationDate": 1685365985449, - "contentHash": "9f8822b72fe2702979e40160cb6d9636", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155Receiver": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155Receiver.sol/IERC1155Receiver.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol": { - "lastModificationDate": 1685365985450, - "contentHash": "9148c2e10c4efb12c71a7f080da5559b", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155MetadataURI": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155MetadataURI.sol/IERC1155MetadataURI.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol": { - "lastModificationDate": 1685365985451, - "contentHash": "88079762e28b246888129028f757e047", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC1155Holder": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155Holder.sol/ERC1155Holder.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol": { - "lastModificationDate": 1685365985451, - "contentHash": "55b180cf664783e9a2baac20e82683fb", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC1155Receiver": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155Receiver.sol/ERC1155Receiver.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol": { - "lastModificationDate": 1685365985451, - "contentHash": "834a0dde221759af42b030253315b086", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC20": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC20.sol/ERC20.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol": { - "lastModificationDate": 1685365985451, - "contentHash": "ad7c2d0af148c8f9f097d65deeb4da6b", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC20": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC20.sol/IERC20.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "909ab67fc5c25033fe6cd364f8c056f9", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC20Metadata": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC20Metadata.sol/IERC20Metadata.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "fb77f144244b9ab12533aa6ce85ef8c5", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC20Permit": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "draft-IERC20Permit.sol/IERC20Permit.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "0320a90f714843ca19373ed143fc4466", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "SafeERC20": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SafeERC20.sol/SafeERC20.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "f7f4f78c31f28534852e5c56000a25af", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol", - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC721": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721.sol/ERC721.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "eb7e61db29f31d88b3c1cef1b063d338", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC721": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC721.sol/IERC721.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol": { - "lastModificationDate": 1685365985452, - "contentHash": "c22d4395e33763de693fd440c6fd10e1", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC721Receiver": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC721Receiver.sol/IERC721Receiver.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol": { - "lastModificationDate": 1685365985453, - "contentHash": "efbc0d15b80a74e34dbe8da0f3e879bb", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC721Metadata": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC721Metadata.sol/IERC721Metadata.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol": { - "lastModificationDate": 1685365985454, - "contentHash": "35b56a00de0fb16f9e6a8d7464d31b0b", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC777": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC777.sol/IERC777.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol": { - "lastModificationDate": 1685365985454, - "contentHash": "268af1696d7a83a7e78a1a8f5ba1c685", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC777Recipient": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC777Recipient.sol/IERC777Recipient.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol": { - "lastModificationDate": 1685365985454, - "contentHash": "7c1ce5bc5bc5f57fe7106ba767063e08", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC777Sender": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC777Sender.sol/IERC777Sender.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/Address.sol": { - "lastModificationDate": 1685365985454, - "contentHash": "f31ad6fc4bbf9c06203987220156a6ba", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.1", - "artifacts": { - "Address": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Address.sol/Address.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/Context.sol": { - "lastModificationDate": 1685365985455, - "contentHash": "5f2c5c4b6af2dd4551027144797bc8be", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "Context": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Context.sol/Context.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol": { - "lastModificationDate": 1685365985455, - "contentHash": "f993f8f50186952a59ee5e3a30b68222", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "StorageSlot": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StorageSlot.sol/StorageSlot.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/Strings.sol": { - "lastModificationDate": 1685365985455, - "contentHash": "396031251978f8febfd90cb62cb240ec", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "Strings": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Strings.sol/Strings.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol": { - "lastModificationDate": 1685365985455, - "contentHash": "fe1190dbb6431c2464246925713f0f7f", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ECDSA": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ECDSA.sol/ECDSA.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol": { - "lastModificationDate": 1685365985456, - "contentHash": "0e7db055ce108f9da7bb6686a00287c0", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC165": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC165.sol/ERC165.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol": { - "lastModificationDate": 1685365985456, - "contentHash": "03e6768535ac4da0e9756f1d8a4a018a", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC165": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC165.sol/IERC165.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol": { - "lastModificationDate": 1685365985457, - "contentHash": "2d32789d582abdcbe87cc5edc2e07374", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1820Registry": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1820Registry.sol/IERC1820Registry.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol": { - "lastModificationDate": 1685365985457, - "contentHash": "b9c58920ce74d6dc819161786112e7ee", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "Math": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Math.sol/Math.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol": { - "lastModificationDate": 1685365985457, - "contentHash": "67cf2dfe1d1c22b4ea7f242e8a17f431", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "SafeCast": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SafeCast.sol/SafeCast.json" - } - } - }, - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol": { - "lastModificationDate": 1685365985457, - "contentHash": "2337f0279507b5edf14a07067adf0d05", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "SafeMath": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SafeMath.sol/SafeMath.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol": { - "lastModificationDate": 1685365987260, - "contentHash": "1e9b13e33c8524e33d22f3f1239efe5c", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "AccessControlUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "AccessControlUpgradeable.sol/AccessControlUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol": { - "lastModificationDate": 1685365987260, - "contentHash": "21b43d1337ebc77c11da3cbe3fd65316", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IAccessControlUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol": { - "lastModificationDate": 1685365987260, - "contentHash": "403ce8273abde646bff81558ddf512ad", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "OwnableUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "OwnableUpgradeable.sol/OwnableUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol": { - "lastModificationDate": 1685365987276, - "contentHash": "fc5844e59776a976987884e4d9814c7d", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol" - ], - "versionRequirement": "^0.8.2", - "artifacts": { - "Initializable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "utils/Initializable.sol/Initializable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol": { - "lastModificationDate": 1685365987276, - "contentHash": "2f348910d560ef8dfba41e601c13c525", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC1155Upgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155Upgradeable.sol/ERC1155Upgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol": { - "lastModificationDate": 1685365987276, - "contentHash": "eb51ed084f6f7fd2c7098715c5690285", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155ReceiverUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol": { - "lastModificationDate": 1685365987276, - "contentHash": "a407c5f8256246823385d0d7f0a83f57", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155Upgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155Upgradeable.sol/IERC1155Upgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol": { - "lastModificationDate": 1685365987277, - "contentHash": "8b7e95c747e2dab3b5444b37410a8315", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC1155MetadataURIUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol": { - "lastModificationDate": 1685365987282, - "contentHash": "228f256dbb21393bc9ad02648e222f74", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.1", - "artifacts": { - "AddressUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "AddressUpgradeable.sol/AddressUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol": { - "lastModificationDate": 1685365987283, - "contentHash": "6200b84950eb05b4a92a39fd1d6e0f9b", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ContextUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ContextUpgradeable.sol/ContextUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol": { - "lastModificationDate": 1685365987283, - "contentHash": "3805d0267faeda96624b50a67ca89f08", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "StringsUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "StringsUpgradeable.sol/StringsUpgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol": { - "lastModificationDate": 1685365987285, - "contentHash": "5f2d8b81c0ff5bd2047b4846c20b998d", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "ERC165Upgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC165Upgradeable.sol/ERC165Upgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol": { - "lastModificationDate": 1685365987285, - "contentHash": "d6ecf203a5e72c845be9bbf2f304a289", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC165Upgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IERC165Upgradeable.sol/IERC165Upgradeable.json" - } - } - }, - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol": { - "lastModificationDate": 1685365987285, - "contentHash": "469f71655418cc5f328fcc9bfdf10e9a", - "sourceName": "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "MathUpgradeable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "MathUpgradeable.sol/MathUpgradeable.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol": { - "lastModificationDate": 1685365990166, - "contentHash": "e085b997d367140ccf777fbec59bc9ea", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "SuperTokenV1Library": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SuperTokenV1Library.sol/SuperTokenV1Library.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol": { - "lastModificationDate": 1685365990167, - "contentHash": "253f76f0473cf1297607b03447c4b53e", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol" - ], - "versionRequirement": null, - "artifacts": { - "IConstantFlowAgreementV1": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol": { - "lastModificationDate": 1685365990167, - "contentHash": "60042f78e0fa54a8547790c391ab27c1", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol" - ], - "versionRequirement": null, - "artifacts": { - "IInstantDistributionAgreementV1": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol": { - "lastModificationDate": 1685365990167, - "contentHash": "c118221a38683150d24833eadb9c8b37", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": null, - "artifacts": { - "BatchOperation": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Definitions.sol/BatchOperation.json" - }, - "ContextDefinitions": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Definitions.sol/ContextDefinitions.json" - }, - "FlowOperatorDefinitions": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Definitions.sol/FlowOperatorDefinitions.json" - }, - "SuperAppDefinitions": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Definitions.sol/SuperAppDefinitions.json" - }, - "SuperfluidGovernanceConfigs": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "Definitions.sol/SuperfluidGovernanceConfigs.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol": { - "lastModificationDate": 1685365990167, - "contentHash": "49d978f06d4edeb5125a7152d6897e69", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperAgreement": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperAgreement.sol/ISuperAgreement.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol": { - "lastModificationDate": 1685365990167, - "contentHash": "3b1a28352fc3ab7b2659bc3ab3c7bb92", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperApp": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperApp.sol/ISuperApp.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "013ebf846bf7079b1aaee07a4bd5dd7e", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperToken.sol/ISuperToken.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "449ec5f0a35b1c86a9fd5b8bb0d3bd90", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperTokenFactory": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperTokenFactory.sol/ISuperTokenFactory.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "923d8bee2334395f7ad909b8e98e07e9", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperfluid": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperfluid.sol/ISuperfluid.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "f39a1c0568c38958f3c5c80b6fb1603c", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperfluidGovernance": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperfluidGovernance.sol/ISuperfluidGovernance.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "095cd6cdf7df13a739649f8917862cb0", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol" - ], - "versionRequirement": null, - "artifacts": { - "ISuperfluidToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ISuperfluidToken.sol/ISuperfluidToken.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "77968d7579793b9f87e33dec4d917f44", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol" - ], - "versionRequirement": null, - "artifacts": { - "ERC20WithTokenInfo": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol": { - "lastModificationDate": 1685365990168, - "contentHash": "6326411b7eb3d451fdffd149d821a7cb", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": null, - "artifacts": { - "TokenInfo": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "TokenInfo.sol/TokenInfo.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol": { - "lastModificationDate": 1685365990169, - "contentHash": "0a0a462c08ee52310942265f672ff775", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol" - ], - "versionRequirement": "=0.8.19", - "artifacts": { - "ERC777Helper": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC777Helper.sol/ERC777Helper.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol": { - "lastModificationDate": 1685365990169, - "contentHash": "ae3bdcebbdffbb1443b14fcfa0532c07", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "=0.8.19", - "artifacts": { - "EventsEmitter": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "EventsEmitter.sol/EventsEmitter.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol": { - "lastModificationDate": 1685365990169, - "contentHash": "4bcdc2392096131058bc73fe9d13492a", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "=0.8.19", - "artifacts": { - "FixedSizeData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "FixedSizeData.sol/FixedSizeData.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol": { - "lastModificationDate": 1685365990172, - "contentHash": "0a5d9ccfeea5b7f07025bab444e3bd7e", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol" - ], - "versionRequirement": "=0.8.19", - "artifacts": { - "SuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SuperToken.sol/SuperToken.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol": { - "lastModificationDate": 1685365990173, - "contentHash": "b1d59d621cbf8e0104f0f12280dd3c00", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol" - ], - "versionRequirement": "=0.8.19", - "artifacts": { - "SuperfluidToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "SuperfluidToken.sol/SuperfluidToken.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol": { - "lastModificationDate": 1685365990173, - "contentHash": "6a724db5d276cab07051ca31e05abe65", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol" - ], - "versionRequirement": "=0.8.19", - "artifacts": { - "UUPSProxiable": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "UUPSProxiable.sol/UUPSProxiable.json" - } - } - }, - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol": { - "lastModificationDate": 1685365990174, - "contentHash": "2ae27b1e523379a8bf8131a711691c46", - "sourceName": "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "=0.8.19", - "artifacts": { - "UUPSUtils": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "UUPSUtils.sol/UUPSUtils.json" - } - } - }, - "script/base/create-publisher.s.sol": { - "lastModificationDate": 1688715359852, - "contentHash": "66795bf71d6064ceb68bf8b87fcf82ef", - "sourceName": "script/base/create-publisher.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "CreatePublisher": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base/create-publisher.s.sol/CreatePublisher.json" - } - } - }, - "script/base/deploy-ABSuperToken.s.sol": { - "lastModificationDate": 1689774928279, - "contentHash": "85ab0e2433f5fdcad0153d0db2dcfd74", - "sourceName": "script/base/deploy-ABSuperToken.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "test/_mocks/ABSuperToken.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployMockSuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" - } - } - }, - "script/base/deploy-hotfix.s.sol": { - "lastModificationDate": 1702980407596, - "contentHash": "591b6261c0319ae53339d336a9fa0322", - "sourceName": "script/base/deploy-hotfix.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployHotFix": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-hotfix.s.sol/DeployHotFix.json" - } - } - }, - "script/base/deploy-implementations.s.sol": { - "lastModificationDate": 1699519078078, - "contentHash": "7b91a7e4dd208eed116e3d6df13ec06b", - "sourceName": "script/base/deploy-implementations.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployImplementation": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base/deploy-implementations.s.sol/DeployImplementation.json" - } - } - }, - "script/base/deploy-platform.s.sol": { - "lastModificationDate": 1699519078079, - "contentHash": "b249659654ea2b392c4629c74cc3f49e", - "sourceName": "script/base/deploy-platform.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployPlatform": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base/deploy-platform.s.sol/DeployPlatform.json" - } - } - }, - "script/base/deploy-royalty.s.sol": { - "lastModificationDate": 1689774928279, - "contentHash": "8f8077a3a079d877814bee151a073325", - "sourceName": "script/base/deploy-royalty.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base/deploy-royalty.s.sol/DeployRoyalty.json" - } - } - }, - "script/base/deploy-v1_1.s.sol": { - "lastModificationDate": 1699522320068, - "contentHash": "04063eb25d5f988bc0b2f3a60fb763b7", - "sourceName": "script/base/deploy-v1_1.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/token/ERC721/ERC721ABOE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployUpgrade": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-v1_1.s.sol/DeployUpgrade.json" - } - } - }, - "script/base-goerli/create-publisher.s.sol": { - "lastModificationDate": 1690989943841, - "contentHash": "e2267180499cb7133e1684156d386c07", - "sourceName": "script/base-goerli/create-publisher.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "CreatePublisher": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base-goerli/create-publisher.s.sol/CreatePublisher.json" - } - } - }, - "script/base-goerli/deploy-ABSuperToken.s.sol": { - "lastModificationDate": 1689947351617, - "contentHash": "85ab0e2433f5fdcad0153d0db2dcfd74", - "sourceName": "script/base-goerli/deploy-ABSuperToken.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "test/_mocks/ABSuperToken.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployMockSuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" - } - } - }, - "script/base-goerli/deploy-implementations.s.sol": { - "lastModificationDate": 1699519078078, - "contentHash": "05dbd9c58bd38f549b31bb572d64d339", - "sourceName": "script/base-goerli/deploy-implementations.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployImplementation": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "base-goerli/deploy-implementations.s.sol/DeployImplementation.json" - } - } - }, - "script/base-goerli/deploy-platform.s.sol": { - "lastModificationDate": 1699519078078, - "contentHash": "cbacf930a7cb4bf9d8fb6c6666a246aa", - "sourceName": "script/base-goerli/deploy-platform.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/token/ERC721/ERC721ABOE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployPlatform": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-platform.s.sol/DeployPlatform.json" - } - } - }, - "script/base-goerli/deploy-royalty.s.sol": { - "lastModificationDate": 1689947351617, - "contentHash": "8f8077a3a079d877814bee151a073325", - "sourceName": "script/base-goerli/deploy-royalty.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-royalty.s.sol/DeployRoyalty.json" - } - } - }, - "script/base-goerli/deploy-upgrade.s.sol": { - "lastModificationDate": 1699519078078, - "contentHash": "17ffe38bcdb1a46ab3332f5ba0577919", - "sourceName": "script/base-goerli/deploy-upgrade.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/token/ERC721/ERC721ABOE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployUpgrade": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "deploy-upgrade.s.sol/DeployUpgrade.json" - } - } - }, - "script/op/deploy-ABSuperToken.s.sol": { - "lastModificationDate": 1685365891000, - "contentHash": "1d056aa991c6d5dfab2d1e455afd5113", - "sourceName": "script/op/deploy-ABSuperToken.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "test/_mocks/ABSuperToken.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployMockSuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json" - } - } - }, - "script/op/deploy-platform.s.sol": { - "lastModificationDate": 1699519078079, - "contentHash": "bd1558a2a1b08abdadcab46e1dc68d55", - "sourceName": "script/op/deploy-platform.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployPlatform": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "op/deploy-platform.s.sol/DeployPlatform.json" - } - } - }, - "script/op/deploy-royalty.s.sol": { - "lastModificationDate": 1689774928279, - "contentHash": "bb2815d1b7297d11c82eee3952d59434", - "sourceName": "script/op/deploy-royalty.s.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/Script.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "DeployRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "op/deploy-royalty.s.sol/DeployRoyalty.json" - } - } - }, - "src/factory/AnotherCloneFactory.sol": { - "lastModificationDate": 1702980407596, - "contentHash": "b370aa7ef541079cc15fe35e58d87c2e", - "sourceName": "src/factory/AnotherCloneFactory.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "AnotherCloneFactory": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "AnotherCloneFactory.sol/AnotherCloneFactory.json" - } - } - }, - "src/libraries/ABDataTypes.sol": { - "lastModificationDate": 1702980407596, - "contentHash": "1fb8a463a53cb3f46035daf65d058bd8", - "sourceName": "src/libraries/ABDataTypes.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABDataTypes": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABDataTypes.sol/ABDataTypes.json" - } - } - }, - "src/libraries/ABErrors.sol": { - "lastModificationDate": 1702980407596, - "contentHash": "a830557b02dcd7a590b70f262663f586", - "sourceName": "src/libraries/ABErrors.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABErrors": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABErrors.sol/ABErrors.json" - } - } - }, - "src/libraries/ABEvents.sol": { - "lastModificationDate": 1702980407596, - "contentHash": "fd828f54bf1543d5aafa603c67c38bda", - "sourceName": "src/libraries/ABEvents.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABEvents": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABEvents.sol/ABEvents.json" - } - } - }, - "src/royalty/ABRoyalty.sol": { - "lastModificationDate": 1702980407597, - "contentHash": "b245d965a64ac207654b99c35b633852", - "sourceName": "src/royalty/ABRoyalty.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/IABRoyalty.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABRoyalty.sol/ABRoyalty.json" - } - } - }, - "src/royalty/IABRoyalty.sol": { - "lastModificationDate": 1702980407597, - "contentHash": "0f8ece50d5fa6fa360a39af9be68a08a", - "sourceName": "src/royalty/IABRoyalty.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "IABRoyalty": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IABRoyalty.sol/IABRoyalty.json" - } - } - }, - "src/token/ERC1155/ERC1155AB.sol": { - "lastModificationDate": 1702980407597, - "contentHash": "1452971d484276b84b000f29153aaca4", - "sourceName": "src/token/ERC1155/ERC1155AB.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC1155AB": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155AB.sol/ERC1155AB.json" - } - } - }, - "src/token/ERC721/ERC721AB.sol": { - "lastModificationDate": 1702980407597, - "contentHash": "17d03817fde02f2207eb384b9a9d4244", - "sourceName": "src/token/ERC721/ERC721AB.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721AB": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721AB.sol/ERC721AB.json" - } - } - }, - "src/token/ERC721/ERC721ABLE.sol": { - "lastModificationDate": 1702980407598, - "contentHash": "8a218f9e4a907b72e13264a421178cad", - "sourceName": "src/token/ERC721/ERC721ABLE.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABLE": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLE.sol/ERC721ABLE.json" - } - } - }, - "src/token/ERC721/ERC721ABOE.sol": { - "lastModificationDate": 1702980407598, - "contentHash": "2e939a79a96748e57db51583a275929f", - "sourceName": "src/token/ERC721/ERC721ABOE.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/token/ERC721/ERC721AB.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABOE": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABOE.sol/ERC721ABOE.json" - } - } - }, - "src/utils/ABDataRegistry.sol": { - "lastModificationDate": 1702980407598, - "contentHash": "99227df8dd7d027c47427baee693682a", - "sourceName": "src/utils/ABDataRegistry.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/IABDataRegistry.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABDataRegistry": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABDataRegistry.sol/ABDataRegistry.json" - } - } - }, - "src/utils/ABVerifier.sol": { - "lastModificationDate": 1689949161070, - "contentHash": "65412e9bc6f0764bc78b283d2e1af36c", - "sourceName": "src/utils/ABVerifier.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "src/libraries/ABErrors.sol", - "src/utils/IABVerifier.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABVerifier": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABVerifier.sol/ABVerifier.json" - } - } - }, - "src/utils/IABDataRegistry.sol": { - "lastModificationDate": 1699519078082, - "contentHash": "072410114586180b67b3b28e70466677", - "sourceName": "src/utils/IABDataRegistry.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "IABDataRegistry": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IABDataRegistry.sol/IABDataRegistry.json" - } - } - }, - "src/utils/IABVerifier.sol": { - "lastModificationDate": 1689949161071, - "contentHash": "4fbc1efff48937c20859fb673ba4ff0a", - "sourceName": "src/utils/IABVerifier.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "IABVerifier": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "IABVerifier.sol/IABVerifier.json" - } - } - }, - "test/_mocks/ABSuperToken.sol": { - "lastModificationDate": 1689774928282, - "contentHash": "e3ae917be85f9c4b702856168287dc50", - "sourceName": "test/_mocks/ABSuperToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABSuperToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABSuperToken.sol/ABSuperToken.json" - } - } - }, - "test/_mocks/MockNFT.sol": { - "lastModificationDate": 1685365891003, - "contentHash": "46e23044e7157f33ccba3b4e3c835c2a", - "sourceName": "test/_mocks/MockNFT.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol", - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol", - "lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "MockNFT": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "MockNFT.sol/MockNFT.json" - } - } - }, - "test/_mocks/MockNFT1155.sol": { - "lastModificationDate": 1685365891003, - "contentHash": "f2a125a3dfdfd7723da9119b3256488d", - "sourceName": "test/_mocks/MockNFT1155.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "MockNFT1155": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "MockNFT1155.sol/MockNFT1155.json" - } - } - }, - "test/_mocks/MockToken.sol": { - "lastModificationDate": 1688715359855, - "contentHash": "76f897607ba873482fa32a4ffa54661b", - "sourceName": "test/_mocks/MockToken.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "MockToken": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "MockToken.sol/MockToken.json" - } - } - }, - "test/_testdata/ABRoyalty.td.sol": { - "lastModificationDate": 1689774928282, - "contentHash": "5c33f38ecb1bb6df367bbb9a27b1e70d", - "sourceName": "test/_testdata/ABRoyalty.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABRoyaltyTestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABRoyalty.td.sol/ABRoyaltyTestData.json" - } - } - }, - "test/_testdata/ABVerifier.td.sol": { - "lastModificationDate": 1685365891003, - "contentHash": "bbc9cfbadf55c2bba8535e2f112b0cd4", - "sourceName": "test/_testdata/ABVerifier.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABVerifierTestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABVerifier.td.sol/ABVerifierTestData.json" - } - } - }, - "test/_testdata/AnotherCloneFactory.td.sol": { - "lastModificationDate": 1689774928282, - "contentHash": "e8260c770956ee743d56367a16870e5a", - "sourceName": "test/_testdata/AnotherCloneFactory.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "AnotherCloneFactoryTestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json" - } - } - }, - "test/_testdata/ERC1155AB.td.sol": { - "lastModificationDate": 1702980407598, - "contentHash": "23ad035185459b78fc89b380a079b389", - "sourceName": "test/_testdata/ERC1155AB.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC1155ABTestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155AB.td.sol/ERC1155ABTestData.json" - } - } - }, - "test/_testdata/ERC721ABLE.td.sol": { - "lastModificationDate": 1702980407599, - "contentHash": "18e471e2024322ed2364a9b96590a5d4", - "sourceName": "test/_testdata/ERC721ABLE.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABTestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLE.td.sol/ERC721ABTestData.json" - } - } - }, - "test/_testdata/ERC721ABOE.td.sol": { - "lastModificationDate": 1702980407599, - "contentHash": "0788ecee578ed53f129ab21f714a4788", - "sourceName": "test/_testdata/ERC721ABOE.td.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABOETestData": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABOE.td.sol/ERC721ABOETestData.json" - } - } - }, - "test/factory/AnotherCloneFactory.t.sol": { - "lastModificationDate": 1702980407599, - "contentHash": "231bdc9a61da91b7c17310ca391a1f50", - "sourceName": "test/factory/AnotherCloneFactory.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/token/ERC721/ERC721ABOE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol", - "test/_testdata/AnotherCloneFactory.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "AnotherCloneFactoryTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json" - } - } - }, - "test/royalty/ABRoyalty.t.sol": { - "lastModificationDate": 1702980407599, - "contentHash": "1709c4b58e65fec2eb5d4f2a98d2dab4", - "sourceName": "test/royalty/ABRoyalty.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol", - "test/_mocks/ABSuperToken.sol", - "test/_testdata/ABRoyalty.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABRoyaltyTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABRoyalty.t.sol/ABRoyaltyTest.json" - } - } - }, - "test/token/ERC1155/ERC1155AB.t.sol": { - "lastModificationDate": 1702980407599, - "contentHash": "7e601132d94c61b0b8aea76a591768ba", - "sourceName": "test/token/ERC1155/ERC1155AB.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol", - "lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol", - "test/_mocks/ABSuperToken.sol", - "test/_mocks/MockToken.sol", - "test/_testdata/ERC1155AB.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC1155ABTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC1155AB.t.sol/ERC1155ABTest.json" - } - } - }, - "test/token/ERC721/ERC721ABLE.t.sol": { - "lastModificationDate": 1702980407600, - "contentHash": "c3871a4701ce436512f1844c328b512f", - "sourceName": "test/token/ERC721/ERC721ABLE.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABLE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol", - "test/_mocks/ABSuperToken.sol", - "test/_mocks/MockToken.sol", - "test/_testdata/ERC721ABLE.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABLE.t.sol/ERC721ABTest.json" - } - } - }, - "test/token/ERC721/ERC721ABOE.t.sol": { - "lastModificationDate": 1702980407600, - "contentHash": "a7b541a46d9274042a34a4f4a02dbbde", - "sourceName": "test/token/ERC721/ERC721ABOE.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol", - "lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol", - "lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/Clones.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "src/factory/AnotherCloneFactory.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/token/ERC1155/ERC1155AB.sol", - "src/token/ERC721/ERC721AB.sol", - "src/token/ERC721/ERC721ABOE.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABDataRegistry.sol", - "src/utils/IABVerifier.sol", - "test/_mocks/ABSuperToken.sol", - "test/_mocks/MockToken.sol", - "test/_testdata/ERC721ABOE.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ERC721ABOETest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ERC721ABOE.t.sol/ERC721ABOETest.json" - } - } - }, - "test/utils/ABDataRegistry.t.sol": { - "lastModificationDate": 1702980407600, - "contentHash": "c5537f68bf6c3c9c871bbde7e9d6c952", - "sourceName": "test/utils/ABDataRegistry.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol", - "lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol", - "lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol", - "lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol", - "src/libraries/ABDataTypes.sol", - "src/libraries/ABErrors.sol", - "src/libraries/ABEvents.sol", - "src/royalty/ABRoyalty.sol", - "src/royalty/IABRoyalty.sol", - "src/utils/ABDataRegistry.sol", - "src/utils/IABDataRegistry.sol", - "test/_mocks/ABSuperToken.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABDataRegistryTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABDataRegistry.t.sol/ABDataRegistryTest.json" - } - } - }, - "test/utils/ABVerifier.t.sol": { - "lastModificationDate": 1699519078085, - "contentHash": "9c9577365435fdbc47bbf215a8914342", - "sourceName": "test/utils/ABVerifier.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "useLiteralContent": false, - "bytecodeHash": "ipfs", - "appendCBOR": true - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ] - } - }, - "evmVersion": "paris", - "libraries": {} - } - }, - "imports": [ - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/forge-std/src/Base.sol", - "lib/forge-std/src/StdAssertions.sol", - "lib/forge-std/src/StdChains.sol", - "lib/forge-std/src/StdCheats.sol", - "lib/forge-std/src/StdError.sol", - "lib/forge-std/src/StdInvariant.sol", - "lib/forge-std/src/StdJson.sol", - "lib/forge-std/src/StdMath.sol", - "lib/forge-std/src/StdStorage.sol", - "lib/forge-std/src/StdStyle.sol", - "lib/forge-std/src/StdUtils.sol", - "lib/forge-std/src/Test.sol", - "lib/forge-std/src/Vm.sol", - "lib/forge-std/src/console.sol", - "lib/forge-std/src/console2.sol", - "lib/forge-std/src/interfaces/IMulticall3.sol", - "lib/openzeppelin-contracts/contracts/access/Ownable.sol", - "lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "lib/openzeppelin-contracts/contracts/proxy/Proxy.sol", - "lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol", - "lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "lib/openzeppelin-contracts/contracts/utils/Context.sol", - "lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol", - "lib/openzeppelin-contracts/contracts/utils/Strings.sol", - "lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol", - "lib/openzeppelin-contracts/contracts/utils/math/Math.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol", - "lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol", - "src/libraries/ABErrors.sol", - "src/utils/ABVerifier.sol", - "src/utils/IABVerifier.sol", - "test/_testdata/ABVerifier.td.sol" - ], - "versionRequirement": "^0.8.18", - "artifacts": { - "ABVerifierTest": { - "0.8.19+commit.7dd6d404.Darwin.appleclang": "ABVerifier.t.sol/ABVerifierTest.json" - } - } - } - } -} +{"_format":"ethers-rs-sol-cache-3","paths":{"artifacts":"out","build_infos":"out/build-info","sources":"src","tests":"test","scripts":"script","libraries":["lib"]},"files":{"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol":{"lastModificationDate":1685365984533,"contentHash":"2bebb9fb7b7e001916c833eb49ff74d3","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721AStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AStorage.sol/ERC721AStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol":{"lastModificationDate":1685365984533,"contentHash":"f8ce3ae749d925b4eee03832f3ce8ed7","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol"],"versionRequirement":"^0.8.4","artifacts":{"ERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721AUpgradeable.json"},"ERC721A__IERC721ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AUpgradeable.sol/ERC721A__IERC721ReceiverUpgradeable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol":{"lastModificationDate":1685365984533,"contentHash":"0fa43fa21f853e3f8f65edb747c92c4e","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__Initializable.sol/ERC721A__Initializable.json"}}},"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol":{"lastModificationDate":1685365984533,"contentHash":"5fabc57a19d6e51af472028bb7022279","sourceName":"lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"ERC721A__InitializableStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721A__InitializableStorage.sol/ERC721A__InitializableStorage.json"}}},"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol":{"lastModificationDate":1685365984533,"contentHash":"f047c91056b779f8c57cd0f6addfc6d2","sourceName":"lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.4","artifacts":{"IERC721AUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721AUpgradeable.sol/IERC721AUpgradeable.json"}}},"lib/forge-std/lib/ds-test/src/test.sol":{"lastModificationDate":1685365985360,"contentHash":"abdafe4b187f548ef0145173f5b93247","sourceName":"lib/forge-std/lib/ds-test/src/test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.5.0","artifacts":{"DSTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"test.sol/DSTest.json"}}},"lib/forge-std/src/Base.sol":{"lastModificationDate":1685365984591,"contentHash":"8f04bbbb2c16f79e14fdc321695a8ec2","sourceName":"lib/forge-std/src/Base.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"CommonBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/CommonBase.json"},"ScriptBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/ScriptBase.json"},"TestBase":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Base.sol/TestBase.json"}}},"lib/forge-std/src/Script.sol":{"lastModificationDate":1685365984591,"contentHash":"83c39354c1e43190bce4dc43860dc786","sourceName":"lib/forge-std/src/Script.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Script":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Script.sol/Script.json"}}},"lib/forge-std/src/StdAssertions.sol":{"lastModificationDate":1685365984592,"contentHash":"9de0f799a1b1664749ddd6ce6492eae1","sourceName":"lib/forge-std/src/StdAssertions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/StdMath.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdAssertions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdAssertions.sol/StdAssertions.json"}}},"lib/forge-std/src/StdChains.sol":{"lastModificationDate":1685365984592,"contentHash":"f73fef006f384b898c755b0e404b84a2","sourceName":"lib/forge-std/src/StdChains.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdChains":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdChains.sol/StdChains.json"}}},"lib/forge-std/src/StdCheats.sol":{"lastModificationDate":1685365984592,"contentHash":"77e0d7b6fd1fb0b20dc96c166f2d8e8c","sourceName":"lib/forge-std/src/StdCheats.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/StdStorage.sol","lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdCheats":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheats.json"},"StdCheatsSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdCheats.sol/StdCheatsSafe.json"}}},"lib/forge-std/src/StdError.sol":{"lastModificationDate":1685365984592,"contentHash":"64c896e1276a291776e5ea5aecb3870a","sourceName":"lib/forge-std/src/StdError.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdError":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdError.sol/stdError.json"}}},"lib/forge-std/src/StdInvariant.sol":{"lastModificationDate":1685365984592,"contentHash":"12c06010ec43ce935ed209d5aca30828","sourceName":"lib/forge-std/src/StdInvariant.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdInvariant":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdInvariant.sol/StdInvariant.json"}}},"lib/forge-std/src/StdJson.sol":{"lastModificationDate":1685365984592,"contentHash":"2e1d13674e152408867795362d833c24","sourceName":"lib/forge-std/src/StdJson.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.0, <0.9.0","artifacts":{"stdJson":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdJson.sol/stdJson.json"}}},"lib/forge-std/src/StdMath.sol":{"lastModificationDate":1685365984592,"contentHash":"9da8f453eba6bb98f3d75bc6822bfb29","sourceName":"lib/forge-std/src/StdMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdMath.sol/stdMath.json"}}},"lib/forge-std/src/StdStorage.sol":{"lastModificationDate":1685365984592,"contentHash":"3cb9868082df39a53927db09dbc21f23","sourceName":"lib/forge-std/src/StdStorage.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"stdStorage":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorage.json"},"stdStorageSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStorage.sol/stdStorageSafe.json"}}},"lib/forge-std/src/StdStyle.sol":{"lastModificationDate":1685365984592,"contentHash":"820e6f6b7704f0c980fae604b1e34b18","sourceName":"lib/forge-std/src/StdStyle.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol"],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"StdStyle":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdStyle.sol/StdStyle.json"}}},"lib/forge-std/src/StdUtils.sol":{"lastModificationDate":1685365984593,"contentHash":"45fc08daaa17b7908fa5de7d758d8c86","sourceName":"lib/forge-std/src/StdUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Vm.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"StdUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StdUtils.sol/StdUtils.json"}}},"lib/forge-std/src/Test.sol":{"lastModificationDate":1685365984593,"contentHash":"bc9d74a0c612e1c2b66cca2973bcc803","sourceName":"lib/forge-std/src/Test.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol"],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Test":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Test.sol/Test.json"}}},"lib/forge-std/src/Vm.sol":{"lastModificationDate":1685365984593,"contentHash":"f4eae1ed3732746674ff1a4c48c0be05","sourceName":"lib/forge-std/src/Vm.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"Vm":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/Vm.json"},"VmSafe":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Vm.sol/VmSafe.json"}}},"lib/forge-std/src/console.sol":{"lastModificationDate":1685365984593,"contentHash":"100b8a33b917da1147740d7ab8b0ded3","sourceName":"lib/forge-std/src/console.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console.sol/console.json"}}},"lib/forge-std/src/console2.sol":{"lastModificationDate":1685365984593,"contentHash":"2096b4e5f252c5df9909cccbe3d2da2e","sourceName":"lib/forge-std/src/console2.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.4.22, <0.9.0","artifacts":{"console2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"console2.sol/console2.json"}}},"lib/forge-std/src/interfaces/IMulticall3.sol":{"lastModificationDate":1685365984594,"contentHash":"7b131ca1ca32ef6378b7b9ad5488b901","sourceName":"lib/forge-std/src/interfaces/IMulticall3.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":">=0.6.2, <0.9.0","artifacts":{"IMulticall3":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IMulticall3.sol/IMulticall3.json"}}},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"lastModificationDate":1685365985432,"contentHash":"e436cea06129be2c73cda4b1acc848b5","sourceName":"lib/openzeppelin-contracts/contracts/access/Ownable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"Ownable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Ownable.sol/Ownable.json"}}},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"lastModificationDate":1685365985437,"contentHash":"2858d98e74e67987ec81b39605230b74","sourceName":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1822Proxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC1822.sol/IERC1822Proxiable.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Clones.sol":{"lastModificationDate":1685365985446,"contentHash":"11535a839f5494023c396098504f5646","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Clones.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Clones":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Clones.sol/Clones.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"lastModificationDate":1685365985446,"contentHash":"3fc3c7c0a2956f36e766691bb9473b06","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1967Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Proxy.sol/ERC1967Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"lastModificationDate":1685365985447,"contentHash":"6baa887a798e95b14f34e093f117e9b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.2","artifacts":{"ERC1967Upgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1967Upgrade.sol/ERC1967Upgrade.json"}}},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"lastModificationDate":1685365985447,"contentHash":"40b3d81a836d50ff47e03893dcaaf204","sourceName":"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Proxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Proxy.sol/Proxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"lastModificationDate":1685365985447,"contentHash":"b6bd23bf19e90b771337037706470933","sourceName":"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IBeacon":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IBeacon.sol/IBeacon.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol":{"lastModificationDate":1685365985447,"contentHash":"a947492251ac15d6bfd899c9fdb4d82b","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"ProxyAdmin":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ProxyAdmin.sol/ProxyAdmin.json"}}},"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol":{"lastModificationDate":1685365985447,"contentHash":"ea48b4a63fd733eec048191be006daa8","sourceName":"lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol"],"versionRequirement":"^0.8.0","artifacts":{"TransparentUpgradeableProxy":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json"}}},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685365985448,"contentHash":"19c4fbc3e825d25231b09f13aff9a2b2","sourceName":"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"proxy/utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol":{"lastModificationDate":1685365985448,"contentHash":"447816f3d93d639006eb423c33d2ca2c","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155.sol/ERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol":{"lastModificationDate":1685365985449,"contentHash":"d5a8f6e07ca38ec384856cfe9f08a867","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155.sol/IERC1155.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"lastModificationDate":1685365985449,"contentHash":"9f8822b72fe2702979e40160cb6d9636","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Receiver.sol/IERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol":{"lastModificationDate":1685365985450,"contentHash":"9148c2e10c4efb12c71a7f080da5559b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURI":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURI.sol/IERC1155MetadataURI.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"lastModificationDate":1685365985451,"contentHash":"88079762e28b246888129028f757e047","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Holder":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Holder.sol/ERC1155Holder.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"lastModificationDate":1685365985451,"contentHash":"55b180cf664783e9a2baac20e82683fb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Receiver.sol/ERC1155Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"lastModificationDate":1685365985451,"contentHash":"834a0dde221759af42b030253315b086","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20.sol/ERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"lastModificationDate":1685365985451,"contentHash":"ad7c2d0af148c8f9f097d65deeb4da6b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20.sol/IERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"lastModificationDate":1685365985452,"contentHash":"909ab67fc5c25033fe6cd364f8c056f9","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC20Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC20Metadata.sol/IERC20Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol":{"lastModificationDate":1685365985452,"contentHash":"fb77f144244b9ab12533aa6ce85ef8c5","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC20Permit":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"draft-IERC20Permit.sol/IERC20Permit.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"lastModificationDate":1685365985452,"contentHash":"0320a90f714843ca19373ed143fc4466","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol"],"versionRequirement":"^0.8.0","artifacts":{"SafeERC20":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeERC20.sol/SafeERC20.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol":{"lastModificationDate":1685365985452,"contentHash":"f7f4f78c31f28534852e5c56000a25af","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721.sol/ERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol":{"lastModificationDate":1685365985452,"contentHash":"eb7e61db29f31d88b3c1cef1b063d338","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721.sol/IERC721.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"lastModificationDate":1685365985452,"contentHash":"c22d4395e33763de693fd440c6fd10e1","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC721Receiver":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Receiver.sol/IERC721Receiver.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol":{"lastModificationDate":1685365985453,"contentHash":"efbc0d15b80a74e34dbe8da0f3e879bb","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC721Metadata":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC721Metadata.sol/IERC721Metadata.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol":{"lastModificationDate":1685365985454,"contentHash":"35b56a00de0fb16f9e6a8d7464d31b0b","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777.sol/IERC777.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol":{"lastModificationDate":1685365985454,"contentHash":"268af1696d7a83a7e78a1a8f5ba1c685","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Recipient":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Recipient.sol/IERC777Recipient.json"}}},"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol":{"lastModificationDate":1685365985454,"contentHash":"7c1ce5bc5bc5f57fe7106ba767063e08","sourceName":"lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC777Sender":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC777Sender.sol/IERC777Sender.json"}}},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"lastModificationDate":1685365985454,"contentHash":"f31ad6fc4bbf9c06203987220156a6ba","sourceName":"lib/openzeppelin-contracts/contracts/utils/Address.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"Address":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Address.sol/Address.json"}}},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"lastModificationDate":1685365985455,"contentHash":"5f2c5c4b6af2dd4551027144797bc8be","sourceName":"lib/openzeppelin-contracts/contracts/utils/Context.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Context":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Context.sol/Context.json"}}},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"lastModificationDate":1685365985455,"contentHash":"f993f8f50186952a59ee5e3a30b68222","sourceName":"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"StorageSlot":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StorageSlot.sol/StorageSlot.json"}}},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"lastModificationDate":1685365985455,"contentHash":"396031251978f8febfd90cb62cb240ec","sourceName":"lib/openzeppelin-contracts/contracts/utils/Strings.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"Strings":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Strings.sol/Strings.json"}}},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"lastModificationDate":1685365985455,"contentHash":"fe1190dbb6431c2464246925713f0f7f","sourceName":"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.0","artifacts":{"ECDSA":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ECDSA.sol/ECDSA.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"lastModificationDate":1685365985456,"contentHash":"0e7db055ce108f9da7bb6686a00287c0","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165.sol/ERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"lastModificationDate":1685365985456,"contentHash":"03e6768535ac4da0e9756f1d8a4a018a","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165.sol/IERC165.json"}}},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol":{"lastModificationDate":1685365985457,"contentHash":"2d32789d582abdcbe87cc5edc2e07374","sourceName":"lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC1820Registry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1820Registry.sol/IERC1820Registry.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"lastModificationDate":1685365985457,"contentHash":"b9c58920ce74d6dc819161786112e7ee","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"Math":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Math.sol/Math.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol":{"lastModificationDate":1685365985457,"contentHash":"67cf2dfe1d1c22b4ea7f242e8a17f431","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeCast":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeCast.sol/SafeCast.json"}}},"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol":{"lastModificationDate":1685365985457,"contentHash":"2337f0279507b5edf14a07067adf0d05","sourceName":"lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"SafeMath":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SafeMath.sol/SafeMath.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"lastModificationDate":1685365987260,"contentHash":"1e9b13e33c8524e33d22f3f1239efe5c","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"AccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AccessControlUpgradeable.sol/AccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"lastModificationDate":1685365987260,"contentHash":"21b43d1337ebc77c11da3cbe3fd65316","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IAccessControlUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"lastModificationDate":1685365987260,"contentHash":"403ce8273abde646bff81558ddf512ad","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"OwnableUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"OwnableUpgradeable.sol/OwnableUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"lastModificationDate":1685365987276,"contentHash":"fc5844e59776a976987884e4d9814c7d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.2","artifacts":{"Initializable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"utils/Initializable.sol/Initializable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol":{"lastModificationDate":1685365987276,"contentHash":"2f348910d560ef8dfba41e601c13c525","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155Upgradeable.sol/ERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol":{"lastModificationDate":1685365987276,"contentHash":"eb51ed084f6f7fd2c7098715c5690285","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155ReceiverUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155ReceiverUpgradeable.sol/IERC1155ReceiverUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol":{"lastModificationDate":1685365987276,"contentHash":"a407c5f8256246823385d0d7f0a83f57","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155Upgradeable.sol/IERC1155Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol":{"lastModificationDate":1685365987277,"contentHash":"8b7e95c747e2dab3b5444b37410a8315","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"IERC1155MetadataURIUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC1155MetadataURIUpgradeable.sol/IERC1155MetadataURIUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"lastModificationDate":1685365987282,"contentHash":"228f256dbb21393bc9ad02648e222f74","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.1","artifacts":{"AddressUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AddressUpgradeable.sol/AddressUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"lastModificationDate":1685365987283,"contentHash":"6200b84950eb05b4a92a39fd1d6e0f9b","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ContextUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ContextUpgradeable.sol/ContextUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"lastModificationDate":1685365987283,"contentHash":"3805d0267faeda96624b50a67ca89f08","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"StringsUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"StringsUpgradeable.sol/StringsUpgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"lastModificationDate":1685365987285,"contentHash":"5f2d8b81c0ff5bd2047b4846c20b998d","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol"],"versionRequirement":"^0.8.0","artifacts":{"ERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC165Upgradeable.sol/ERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"lastModificationDate":1685365987285,"contentHash":"d6ecf203a5e72c845be9bbf2f304a289","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"IERC165Upgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IERC165Upgradeable.sol/IERC165Upgradeable.json"}}},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"lastModificationDate":1685365987285,"contentHash":"469f71655418cc5f328fcc9bfdf10e9a","sourceName":"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.0","artifacts":{"MathUpgradeable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MathUpgradeable.sol/MathUpgradeable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol":{"lastModificationDate":1685365990166,"contentHash":"e085b997d367140ccf777fbec59bc9ea","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"SuperTokenV1Library":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperTokenV1Library.sol/SuperTokenV1Library.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol":{"lastModificationDate":1685365990167,"contentHash":"253f76f0473cf1297607b03447c4b53e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IConstantFlowAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IConstantFlowAgreementV1.sol/IConstantFlowAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol":{"lastModificationDate":1685365990167,"contentHash":"60042f78e0fa54a8547790c391ab27c1","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"IInstantDistributionAgreementV1":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IInstantDistributionAgreementV1.sol/IInstantDistributionAgreementV1.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol":{"lastModificationDate":1685365990167,"contentHash":"c118221a38683150d24833eadb9c8b37","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"BatchOperation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/BatchOperation.json"},"ContextDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/ContextDefinitions.json"},"FlowOperatorDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/FlowOperatorDefinitions.json"},"SuperAppDefinitions":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperAppDefinitions.json"},"SuperfluidGovernanceConfigs":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"Definitions.sol/SuperfluidGovernanceConfigs.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol":{"lastModificationDate":1685365990167,"contentHash":"49d978f06d4edeb5125a7152d6897e69","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperAgreement":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperAgreement.sol/ISuperAgreement.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol":{"lastModificationDate":1685365990167,"contentHash":"3b1a28352fc3ab7b2659bc3ab3c7bb92","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperApp":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperApp.sol/ISuperApp.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol":{"lastModificationDate":1685365990168,"contentHash":"013ebf846bf7079b1aaee07a4bd5dd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperToken.sol/ISuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol":{"lastModificationDate":1685365990168,"contentHash":"449ec5f0a35b1c86a9fd5b8bb0d3bd90","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperTokenFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperTokenFactory.sol/ISuperTokenFactory.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol":{"lastModificationDate":1685365990168,"contentHash":"923d8bee2334395f7ad909b8e98e07e9","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluid":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluid.sol/ISuperfluid.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol":{"lastModificationDate":1685365990168,"contentHash":"f39a1c0568c38958f3c5c80b6fb1603c","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidGovernance":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidGovernance.sol/ISuperfluidGovernance.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol":{"lastModificationDate":1685365990168,"contentHash":"095cd6cdf7df13a739649f8917862cb0","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol"],"versionRequirement":null,"artifacts":{"ISuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ISuperfluidToken.sol/ISuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol":{"lastModificationDate":1685365990168,"contentHash":"77968d7579793b9f87e33dec4d917f44","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol"],"versionRequirement":null,"artifacts":{"ERC20WithTokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC20WithTokenInfo.sol/ERC20WithTokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol":{"lastModificationDate":1685365990168,"contentHash":"6326411b7eb3d451fdffd149d821a7cb","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":null,"artifacts":{"TokenInfo":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"TokenInfo.sol/TokenInfo.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol":{"lastModificationDate":1685365990169,"contentHash":"0a0a462c08ee52310942265f672ff775","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol"],"versionRequirement":"=0.8.19","artifacts":{"ERC777Helper":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC777Helper.sol/ERC777Helper.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol":{"lastModificationDate":1685365990169,"contentHash":"ae3bdcebbdffbb1443b14fcfa0532c07","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"EventsEmitter":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"EventsEmitter.sol/EventsEmitter.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol":{"lastModificationDate":1685365990169,"contentHash":"4bcdc2392096131058bc73fe9d13492a","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"FixedSizeData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"FixedSizeData.sol/FixedSizeData.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol":{"lastModificationDate":1685365990172,"contentHash":"0a5d9ccfeea5b7f07025bab444e3bd7e","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperToken.sol/SuperToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol":{"lastModificationDate":1685365990173,"contentHash":"b1d59d621cbf8e0104f0f12280dd3c00","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol"],"versionRequirement":"=0.8.19","artifacts":{"SuperfluidToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"SuperfluidToken.sol/SuperfluidToken.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol":{"lastModificationDate":1685365990173,"contentHash":"6a724db5d276cab07051ca31e05abe65","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"=0.8.19","artifacts":{"UUPSProxiable":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSProxiable.sol/UUPSProxiable.json"}}},"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol":{"lastModificationDate":1685365990174,"contentHash":"2ae27b1e523379a8bf8131a711691c46","sourceName":"lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"=0.8.19","artifacts":{"UUPSUtils":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"UUPSUtils.sol/UUPSUtils.json"}}},"script/base/create-publisher.s.sol":{"lastModificationDate":1704461974959,"contentHash":"66795bf71d6064ceb68bf8b87fcf82ef","sourceName":"script/base/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/create-publisher.s.sol/CreatePublisher.json"}}},"script/base/deploy-ABSuperToken.s.sol":{"lastModificationDate":1689774928279,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base/deploy-hotfix.s.sol":{"lastModificationDate":1705049431857,"contentHash":"591b6261c0319ae53339d336a9fa0322","sourceName":"script/base/deploy-hotfix.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployHotFix":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-hotfix.s.sol/DeployHotFix.json"}}},"script/base/deploy-implementations.s.sol":{"lastModificationDate":1704461974959,"contentHash":"7b91a7e4dd208eed116e3d6df13ec06b","sourceName":"script/base/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base/deploy-platform.s.sol":{"lastModificationDate":1704461974960,"contentHash":"b249659654ea2b392c4629c74cc3f49e","sourceName":"script/base/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base/deploy-royalty.s.sol":{"lastModificationDate":1704461974960,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base/deploy-v1_1.s.sol":{"lastModificationDate":1704461974961,"contentHash":"04063eb25d5f988bc0b2f3a60fb763b7","sourceName":"script/base/deploy-v1_1.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_1.s.sol/DeployUpgrade.json"}}},"script/base/deploy-v1_2.s.sol":{"lastModificationDate":1705049428438,"contentHash":"e2057e3721334fb9ba3b3ab9a9000a2b","sourceName":"script/base/deploy-v1_2.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployV1_2":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-v1_2.s.sol/DeployV1_2.json"}}},"script/base-goerli/create-publisher.s.sol":{"lastModificationDate":1704891576248,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/deploy-ABSuperToken.s.sol":{"lastModificationDate":1689947351617,"contentHash":"85ab0e2433f5fdcad0153d0db2dcfd74","sourceName":"script/base-goerli/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/deploy-implementations.s.sol":{"lastModificationDate":1704461974956,"contentHash":"05dbd9c58bd38f549b31bb572d64d339","sourceName":"script/base-goerli/deploy-implementations.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployImplementation":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"base-goerli/deploy-implementations.s.sol/DeployImplementation.json"}}},"script/base-goerli/deploy-kyc-upgrade.s.sol":{"lastModificationDate":1705049428436,"contentHash":"877224e40600e12b439705f29ee8cc50","sourceName":"script/base-goerli/deploy-kyc-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployKYCUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-kyc-upgrade.s.sol/DeployKYCUpgrade.json"}}},"script/base-goerli/deploy-platform.s.sol":{"lastModificationDate":1704461974956,"contentHash":"cbacf930a7cb4bf9d8fb6c6666a246aa","sourceName":"script/base-goerli/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/deploy-royalty.s.sol":{"lastModificationDate":1704461974957,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/base-goerli/deploy-upgrade.s.sol":{"lastModificationDate":1704461974958,"contentHash":"17ffe38bcdb1a46ab3332f5ba0577919","sourceName":"script/base-goerli/deploy-upgrade.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployUpgrade":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"deploy-upgrade.s.sol/DeployUpgrade.json"}}},"script/base-goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1705049428436,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/base-goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1705049428437,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/base-goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/base-goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1705049428437,"contentHash":"b70d8c3e4c0e87035617d16c5b7ac0f5","sourceName":"script/base-goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/base-goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1705049428437,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/base-goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/goerli/fireblocks/create-publisher.s.sol":{"lastModificationDate":1705049428438,"contentHash":"e2267180499cb7133e1684156d386c07","sourceName":"script/goerli/fireblocks/create-publisher.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"CreatePublisher":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/create-publisher.s.sol/CreatePublisher.json"}}},"script/goerli/fireblocks/deploy-ABSuperToken.s.sol":{"lastModificationDate":1705049428438,"contentHash":"39c6890b24873accfd9bc008fcfd019a","sourceName":"script/goerli/fireblocks/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/goerli/fireblocks/deploy-platform.s.sol":{"lastModificationDate":1705049428438,"contentHash":"f4b11546308bcfa921e15dd8e55ca1b8","sourceName":"script/goerli/fireblocks/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-platform.s.sol/DeployPlatform.json"}}},"script/goerli/fireblocks/deploy-royalty.s.sol":{"lastModificationDate":1705049428438,"contentHash":"8f8077a3a079d877814bee151a073325","sourceName":"script/goerli/fireblocks/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"goerli/fireblocks/deploy-royalty.s.sol/DeployRoyalty.json"}}},"script/op/deploy-ABSuperToken.s.sol":{"lastModificationDate":1685365891000,"contentHash":"1d056aa991c6d5dfab2d1e455afd5113","sourceName":"script/op/deploy-ABSuperToken.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployMockSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-ABSuperToken.s.sol/DeployMockSuperToken.json"}}},"script/op/deploy-platform.s.sol":{"lastModificationDate":1704461974962,"contentHash":"bd1558a2a1b08abdadcab46e1dc68d55","sourceName":"script/op/deploy-platform.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployPlatform":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-platform.s.sol/DeployPlatform.json"}}},"script/op/deploy-royalty.s.sol":{"lastModificationDate":1704461974964,"contentHash":"bb2815d1b7297d11c82eee3952d59434","sourceName":"script/op/deploy-royalty.s.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/src/Base.sol","lib/forge-std/src/Script.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"DeployRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"op/deploy-royalty.s.sol/DeployRoyalty.json"}}},"src/factory/AnotherCloneFactory.sol":{"lastModificationDate":1705049428439,"contentHash":"ff3cf727aba778ed6bd91876589bce0d","sourceName":"src/factory/AnotherCloneFactory.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactory":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.sol/AnotherCloneFactory.json"}}},"src/libraries/ABDataTypes.sol":{"lastModificationDate":1705049428440,"contentHash":"cea9e196d6467ea9022b99325ee0179b","sourceName":"src/libraries/ABDataTypes.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABDataTypes":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataTypes.sol/ABDataTypes.json"}}},"src/libraries/ABErrors.sol":{"lastModificationDate":1705049428440,"contentHash":"a63b071cfa179773d36b3b758b8ff206","sourceName":"src/libraries/ABErrors.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABErrors":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABErrors.sol/ABErrors.json"}}},"src/libraries/ABEvents.sol":{"lastModificationDate":1705049428440,"contentHash":"9afaf557e827e746bf4e6e90c88fbafc","sourceName":"src/libraries/ABEvents.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABEvents":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABEvents.sol/ABEvents.json"}}},"src/royalty/ABRoyalty.sol":{"lastModificationDate":1705049428441,"contentHash":"4c24e9ce7e19bfddebdc4f680ed5fd4a","sourceName":"src/royalty/ABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.sol/ABRoyalty.json"}}},"src/royalty/IABRoyalty.sol":{"lastModificationDate":1705049428441,"contentHash":"0bfe5b9b415c03d284b81b7295b9e873","sourceName":"src/royalty/IABRoyalty.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABRoyalty":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABRoyalty.sol/IABRoyalty.json"}}},"src/token/ERC1155/ERC1155AB.sol":{"lastModificationDate":1705049428442,"contentHash":"152b478934293983e8ad5d3c5c70c379","sourceName":"src/token/ERC1155/ERC1155AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.sol/ERC1155AB.json"}}},"src/token/ERC721/ERC721AB.sol":{"lastModificationDate":1705050691183,"contentHash":"6175c76c52ffee86d67c510cb40bc9f4","sourceName":"src/token/ERC721/ERC721AB.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721AB":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721AB.sol/ERC721AB.json"}}},"src/token/ERC721/ERC721ABLE.sol":{"lastModificationDate":1705049428442,"contentHash":"65ed9675609d8ac3007fd9954d5aab8c","sourceName":"src/token/ERC721/ERC721ABLE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABLE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.sol/ERC721ABLE.json"}}},"src/token/ERC721/ERC721ABOE.sol":{"lastModificationDate":1705049428443,"contentHash":"007099e235f4e0043240c421e63b7a68","sourceName":"src/token/ERC721/ERC721ABOE.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/token/ERC721/ERC721AB.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOE":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.sol/ERC721ABOE.json"}}},"src/utils/ABDataRegistry.sol":{"lastModificationDate":1702980407598,"contentHash":"99227df8dd7d027c47427baee693682a","sourceName":"src/utils/ABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/IABRoyalty.sol","src/utils/IABDataRegistry.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.sol/ABDataRegistry.json"}}},"src/utils/ABKYCModule.sol":{"lastModificationDate":1705049428443,"contentHash":"952daa693fab5b97f1019870c1992446","sourceName":"src/utils/ABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABKYCModule.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABKYCModule.sol/ABKYCModule.json"}}},"src/utils/ABVerifier.sol":{"lastModificationDate":1704461974969,"contentHash":"65412e9bc6f0764bc78b283d2e1af36c","sourceName":"src/utils/ABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/IABVerifier.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.sol/ABVerifier.json"}}},"src/utils/IABDataRegistry.sol":{"lastModificationDate":1699519078082,"contentHash":"072410114586180b67b3b28e70466677","sourceName":"src/utils/IABDataRegistry.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABDataRegistry":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABDataRegistry.sol/IABDataRegistry.json"}}},"src/utils/IABKYCModule.sol":{"lastModificationDate":1705049428444,"contentHash":"64652c1becafd8332899fbbc689facc2","sourceName":"src/utils/IABKYCModule.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABKYCModule":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABKYCModule.sol/IABKYCModule.json"}}},"src/utils/IABVerifier.sol":{"lastModificationDate":1689949161071,"contentHash":"4fbc1efff48937c20859fb673ba4ff0a","sourceName":"src/utils/IABVerifier.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"IABVerifier":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"IABVerifier.sol/IABVerifier.json"}}},"test/_mocks/ABSuperToken.sol":{"lastModificationDate":1689774928282,"contentHash":"e3ae917be85f9c4b702856168287dc50","sourceName":"test/_mocks/ABSuperToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABSuperToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABSuperToken.sol/ABSuperToken.json"}}},"test/_mocks/MockNFT.sol":{"lastModificationDate":1685365891003,"contentHash":"46e23044e7157f33ccba3b4e3c835c2a","sourceName":"test/_mocks/MockNFT.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol","lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT.sol/MockNFT.json"}}},"test/_mocks/MockNFT1155.sol":{"lastModificationDate":1685365891003,"contentHash":"f2a125a3dfdfd7723da9119b3256488d","sourceName":"test/_mocks/MockNFT1155.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockNFT1155":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockNFT1155.sol/MockNFT1155.json"}}},"test/_mocks/MockToken.sol":{"lastModificationDate":1688715359855,"contentHash":"76f897607ba873482fa32a4ffa54661b","sourceName":"test/_mocks/MockToken.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol"],"versionRequirement":"^0.8.18","artifacts":{"MockToken":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"MockToken.sol/MockToken.json"}}},"test/_testdata/ABRoyalty.td.sol":{"lastModificationDate":1689774928282,"contentHash":"5c33f38ecb1bb6df367bbb9a27b1e70d","sourceName":"test/_testdata/ABRoyalty.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.td.sol/ABRoyaltyTestData.json"}}},"test/_testdata/ABVerifier.td.sol":{"lastModificationDate":1685365891003,"contentHash":"bbc9cfbadf55c2bba8535e2f112b0cd4","sourceName":"test/_testdata/ABVerifier.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.td.sol/ABVerifierTestData.json"}}},"test/_testdata/AnotherCloneFactory.td.sol":{"lastModificationDate":1689774928282,"contentHash":"e8260c770956ee743d56367a16870e5a","sourceName":"test/_testdata/AnotherCloneFactory.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.td.sol/AnotherCloneFactoryTestData.json"}}},"test/_testdata/ERC1155AB.td.sol":{"lastModificationDate":1705049428444,"contentHash":"3cbee26ca119003d77f63f5cb840452b","sourceName":"test/_testdata/ERC1155AB.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.td.sol/ERC1155ABTestData.json"}}},"test/_testdata/ERC721ABLE.td.sol":{"lastModificationDate":1705049428444,"contentHash":"af912b993a2c290ae842694a7da3e292","sourceName":"test/_testdata/ERC721ABLE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.td.sol/ERC721ABTestData.json"}}},"test/_testdata/ERC721ABOE.td.sol":{"lastModificationDate":1705049428445,"contentHash":"b7f1965d2b763481b6ec39413d9c79f9","sourceName":"test/_testdata/ERC721ABOE.td.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":[],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETestData":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.td.sol/ERC721ABOETestData.json"}}},"test/factory/AnotherCloneFactory.t.sol":{"lastModificationDate":1705049428445,"contentHash":"bee41342f6760fa179590adf1e84d1e2","sourceName":"test/factory/AnotherCloneFactory.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_testdata/AnotherCloneFactory.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"AnotherCloneFactoryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"AnotherCloneFactory.t.sol/AnotherCloneFactoryTest.json"}}},"test/royalty/ABRoyalty.t.sol":{"lastModificationDate":1705049428446,"contentHash":"244b285c08d97f5f87b553ebbde6029f","sourceName":"test/royalty/ABRoyalty.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_testdata/ABRoyalty.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABRoyaltyTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABRoyalty.t.sol/ABRoyaltyTest.json"}}},"test/token/ERC1155/ERC1155AB.t.sol":{"lastModificationDate":1705049428446,"contentHash":"97729cddbce4e4d3c9214d48f583c306","sourceName":"test/token/ERC1155/ERC1155AB.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol","lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC1155AB.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC1155ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC1155AB.t.sol/ERC1155ABTest.json"}}},"test/token/ERC721/ERC721ABLE.t.sol":{"lastModificationDate":1705049428447,"contentHash":"ba06e355c221433d616897be168e5ce2","sourceName":"test/token/ERC721/ERC721ABLE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABLE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABLE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABLE.t.sol/ERC721ABTest.json"}}},"test/token/ERC721/ERC721ABOE.t.sol":{"lastModificationDate":1705049428447,"contentHash":"d48fe7af989d6740cafc112c8501e254","sourceName":"test/token/ERC721/ERC721ABOE.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/ERC721A-Upgradeable/contracts/ERC721AStorage.sol","lib/ERC721A-Upgradeable/contracts/ERC721AUpgradeable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__Initializable.sol","lib/ERC721A-Upgradeable/contracts/ERC721A__InitializableStorage.sol","lib/ERC721A-Upgradeable/contracts/IERC721AUpgradeable.sol","lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/Clones.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/factory/AnotherCloneFactory.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/token/ERC1155/ERC1155AB.sol","src/token/ERC721/ERC721AB.sol","src/token/ERC721/ERC721ABOE.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/ABVerifier.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","src/utils/IABVerifier.sol","test/_mocks/ABSuperToken.sol","test/_mocks/MockToken.sol","test/_testdata/ERC721ABOE.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ERC721ABOETest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ERC721ABOE.t.sol/ERC721ABOETest.json"}}},"test/utils/ABDataRegistry.t.sol":{"lastModificationDate":1705051612855,"contentHash":"f1adc9d1150cb7634739916260e9aa88","sourceName":"test/utils/ABDataRegistry.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol","lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol","lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol","lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/apps/SuperTokenV1Library.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/Definitions.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/ERC777Helper.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/EventsEmitter.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/libs/FixedSizeData.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol","lib/protocol-monorepo/packages/ethereum-contracts/contracts/upgradability/UUPSUtils.sol","src/libraries/ABDataTypes.sol","src/libraries/ABErrors.sol","src/libraries/ABEvents.sol","src/royalty/ABRoyalty.sol","src/royalty/IABRoyalty.sol","src/utils/ABDataRegistry.sol","src/utils/ABKYCModule.sol","src/utils/IABDataRegistry.sol","src/utils/IABKYCModule.sol","test/_mocks/ABSuperToken.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABDataRegistryTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABDataRegistry.t.sol/ABDataRegistryTest.json"}}},"test/utils/ABVerifier.t.sol":{"lastModificationDate":1704461974975,"contentHash":"9c9577365435fdbc47bbf215a8914342","sourceName":"test/utils/ABVerifier.t.sol","solcConfig":{"settings":{"optimizer":{"enabled":true,"runs":200},"metadata":{"useLiteralContent":false,"bytecodeHash":"ipfs","appendCBOR":true},"outputSelection":{"*":{"":["ast"],"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata"]}},"evmVersion":"paris","libraries":{}}},"imports":["lib/forge-std/lib/ds-test/src/test.sol","lib/forge-std/src/Base.sol","lib/forge-std/src/StdAssertions.sol","lib/forge-std/src/StdChains.sol","lib/forge-std/src/StdCheats.sol","lib/forge-std/src/StdError.sol","lib/forge-std/src/StdInvariant.sol","lib/forge-std/src/StdJson.sol","lib/forge-std/src/StdMath.sol","lib/forge-std/src/StdStorage.sol","lib/forge-std/src/StdStyle.sol","lib/forge-std/src/StdUtils.sol","lib/forge-std/src/Test.sol","lib/forge-std/src/Vm.sol","lib/forge-std/src/console.sol","lib/forge-std/src/console2.sol","lib/forge-std/src/interfaces/IMulticall3.sol","lib/openzeppelin-contracts/contracts/access/Ownable.sol","lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol","lib/openzeppelin-contracts/contracts/proxy/Proxy.sol","lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol","lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol","lib/openzeppelin-contracts/contracts/utils/Address.sol","lib/openzeppelin-contracts/contracts/utils/Context.sol","lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol","lib/openzeppelin-contracts/contracts/utils/Strings.sol","lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol","lib/openzeppelin-contracts/contracts/utils/math/Math.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol","lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol","src/libraries/ABErrors.sol","src/utils/ABVerifier.sol","src/utils/IABVerifier.sol","test/_testdata/ABVerifier.td.sol"],"versionRequirement":"^0.8.18","artifacts":{"ABVerifierTest":{"0.8.19+commit.7dd6d404.Darwin.appleclang":"ABVerifier.t.sol/ABVerifierTest.json"}}}}} \ No newline at end of file diff --git a/test/utils/ABDataRegistry.t.sol b/test/utils/ABDataRegistry.t.sol index a010395..8a9d869 100644 --- a/test/utils/ABDataRegistry.t.sol +++ b/test/utils/ABDataRegistry.t.sol @@ -77,18 +77,16 @@ contract ABDataRegistryTest is Test { abRoyaltyProxy = new TransparentUpgradeableProxy( address(new ABRoyalty()), address(proxyAdmin), - abi.encodeWithSelector(ABRoyalty.initialize.selector, publisher, address(abDataRegistry), address(abKYCModule)) + abi.encodeWithSelector( + ABRoyalty.initialize.selector, publisher, address(abDataRegistry), address(abKYCModule) + ) ); abRoyalty = ABRoyalty(address(abRoyaltyProxy)); vm.label(address(abRoyalty), "abRoyalty"); } function test_initialize() public { - abDataRegistryProxy = new TransparentUpgradeableProxy( - address(new ABDataRegistry()), - address(proxyAdmin), - "" - ); + abDataRegistryProxy = new TransparentUpgradeableProxy(address(new ABDataRegistry()), address(proxyAdmin), ""); abDataRegistry = ABDataRegistry(address(abDataRegistryProxy)); abDataRegistry.initialize(DROP_ID_OFFSET, abTreasury); @@ -104,6 +102,7 @@ contract ABDataRegistryTest is Test { function test_registerDrop_correctRole(address _sender, uint256 _tokenId, uint256 _fee) public { vm.assume(_sender != address(0)); + vm.assume(_sender != address(proxyAdmin)); abDataRegistry.grantRole(COLLECTION_ROLE_HASH, _sender); abDataRegistry.grantRole(FACTORY_ROLE_HASH, _sender);