From 95474c408eb80f99d9b5c5dc926d9372c5b46419 Mon Sep 17 00:00:00 2001 From: mejango Date: Thu, 19 Sep 2024 18:53:43 -0300 Subject: [PATCH 1/3] deploy returns the hook address and adds to allowe dposts --- package-lock.json | 48 ++++++++++++++++++++++--- package.json | 2 +- script/Deploy.s.sol | 1 - src/CTDeployer.sol | 50 ++++++++++++++++++++++++--- src/interfaces/ICTDeployer.sol | 7 ++-- src/structs/CTDeployerAllowedPost.sol | 17 +++++++++ 6 files changed, 111 insertions(+), 14 deletions(-) create mode 100644 src/structs/CTDeployerAllowedPost.sol diff --git a/package-lock.json b/package-lock.json index 6633e54..94c968f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.17", "license": "MIT", "dependencies": { - "@bananapus/721-hook": "^0.0.23", + "@bananapus/721-hook": "^0.0.24", "@bananapus/buyback-hook": "^0.0.20", "@bananapus/core": "^0.0.32", "@bananapus/ownable": "^0.0.7", @@ -160,9 +160,9 @@ } }, "node_modules/@bananapus/721-hook": { - "version": "0.0.23", - "resolved": "https://registry.npmjs.org/@bananapus/721-hook/-/721-hook-0.0.23.tgz", - "integrity": "sha512-oYDD4Cf8YXmJN5LjBRqse6UKUlr1IyEUY//vceHD79LufpwxvzgUBqfOrIrT/vrEkmaAQYmQ6JMSisSuFPuoIg==", + "version": "0.0.24", + "resolved": "https://registry.npmjs.org/@bananapus/721-hook/-/721-hook-0.0.24.tgz", + "integrity": "sha512-V0w7191YJoFgfovWnbMhrNMQUMgdM1er1yQCFblEVSxPShZnjvLeA213jcXJ78s9PPxpIh0I3kvCVUWSe4MpTQ==", "dependencies": { "@bananapus/address-registry": "^0.0.7", "@bananapus/core": "^0.0.32", @@ -548,6 +548,30 @@ "@rev-net/core": "^0.0.33" } }, + "node_modules/@croptop/core/node_modules/@bananapus/721-hook": { + "version": "0.0.23", + "resolved": "https://registry.npmjs.org/@bananapus/721-hook/-/721-hook-0.0.23.tgz", + "integrity": "sha512-oYDD4Cf8YXmJN5LjBRqse6UKUlr1IyEUY//vceHD79LufpwxvzgUBqfOrIrT/vrEkmaAQYmQ6JMSisSuFPuoIg==", + "dependencies": { + "@bananapus/address-registry": "^0.0.7", + "@bananapus/core": "^0.0.32", + "@bananapus/ownable": "^0.0.7", + "@bananapus/permission-ids": "^0.0.12", + "@openzeppelin/contracts": "^5.0.2", + "@prb/math": "^4.0.3" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@croptop/core/node_modules/@bananapus/721-hook/node_modules/@bananapus/address-registry": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@bananapus/address-registry/-/address-registry-0.0.7.tgz", + "integrity": "sha512-swak1nV1tNLwOdZGN9D6HLMHbzFCHRHo2xTeVWHmLk+E5EIZHp+6ItkESxop6iCbmMw3CJ1dihTsfnznP8aKJQ==", + "dependencies": { + "@sphinx-labs/plugins": "^0.33.0" + } + }, "node_modules/@croptop/core/node_modules/@bananapus/address-registry": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/@bananapus/address-registry/-/address-registry-0.0.4.tgz", @@ -2745,6 +2769,22 @@ "@openzeppelin/contracts": "^5.0.2" } }, + "node_modules/@rev-net/core/node_modules/@bananapus/721-hook": { + "version": "0.0.23", + "resolved": "https://registry.npmjs.org/@bananapus/721-hook/-/721-hook-0.0.23.tgz", + "integrity": "sha512-oYDD4Cf8YXmJN5LjBRqse6UKUlr1IyEUY//vceHD79LufpwxvzgUBqfOrIrT/vrEkmaAQYmQ6JMSisSuFPuoIg==", + "dependencies": { + "@bananapus/address-registry": "^0.0.7", + "@bananapus/core": "^0.0.32", + "@bananapus/ownable": "^0.0.7", + "@bananapus/permission-ids": "^0.0.12", + "@openzeppelin/contracts": "^5.0.2", + "@prb/math": "^4.0.3" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@rev-net/core/node_modules/@bananapus/swap-terminal": { "version": "0.0.20", "resolved": "https://registry.npmjs.org/@bananapus/swap-terminal/-/swap-terminal-0.0.20.tgz", diff --git a/package.json b/package.json index 581fea0..24533fe 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ }, "dependencies": { "@bananapus/core": "^0.0.32", - "@bananapus/721-hook": "^0.0.23", + "@bananapus/721-hook": "^0.0.24", "@bananapus/permission-ids": "^0.0.12", "@bananapus/ownable": "^0.0.7", "@openzeppelin/contracts": "^5.0.2", diff --git a/script/Deploy.s.sol b/script/Deploy.s.sol index 734936f..74610df 100644 --- a/script/Deploy.s.sol +++ b/script/Deploy.s.sol @@ -21,7 +21,6 @@ contract DeployScript is Script, Sphinx { // fee_project. uint256 FEE_PROJECT_ID = 0; - /// @notice the salts that are used to deploy the contracts. bytes32 PUBLISHER_SALT = "_PUBLISHER_SALT_"; bytes32 DEPLOYER_SALT = "_DEPLOYER_SALT_"; diff --git a/src/CTDeployer.sol b/src/CTDeployer.sol index 5f3375e..d368386 100644 --- a/src/CTDeployer.sol +++ b/src/CTDeployer.sol @@ -1,6 +1,7 @@ // SPDX-License-Identifier: MIT pragma solidity 0.8.23; +import {IJB721TiersHook} from "@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol"; import {IJB721TiersHookProjectDeployer} from "@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol"; import {IJB721TokenUriResolver} from "@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol"; import {JB721InitTiersConfig} from "@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol"; @@ -18,6 +19,7 @@ import {IERC721Receiver} from "@openzeppelin/contracts/token/ERC721/IERC721Recei import {ICTDeployer} from "./interfaces/ICTDeployer.sol"; import {ICTPublisher} from "./interfaces/ICTPublisher.sol"; import {CTAllowedPost} from "./structs/CTAllowedPost.sol"; +import {CTDeployerAllowedPost} from "./structs/CTDeployerAllowedPost.sol"; /// @notice A contract that facilitates deploying a simple Juicebox project to receive posts from Croptop templates. contract CTDeployer is IERC721Receiver, ICTDeployer { @@ -85,24 +87,25 @@ contract CTDeployer is IERC721Receiver, ICTDeployer { /// @param name The name of the collection where posts will go. /// @param symbol The symbol of the collection where posts will go. /// @return projectId The ID of the newly created project. + /// @return hook The hook that was created. function deployProjectFor( address owner, - JBTerminalConfig[] calldata terminalConfigurations, + JBTerminalConfig[] memory terminalConfigurations, string memory projectUri, - CTAllowedPost[] calldata allowedPosts, + CTDeployerAllowedPost[] memory allowedPosts, string memory contractUri, string memory name, string memory symbol ) external - returns (uint256 projectId) + returns (uint256 projectId, IJB721TiersHook hook) { JBPayDataHookRulesetConfig[] memory rulesetConfigurations = new JBPayDataHookRulesetConfig[](1); rulesetConfigurations[0].weight = 1_000_000 * (10 ** 18); rulesetConfigurations[0].metadata.baseCurrency = uint32(uint160(JBConstants.NATIVE_TOKEN)); // Deploy a blank project. - projectId = DEPLOYER.launchProjectFor({ + (projectId, hook) = DEPLOYER.launchProjectFor({ owner: address(this), deployTiersHookConfig: JBDeploy721TiersHookConfig({ name: name, @@ -134,9 +137,46 @@ contract CTDeployer is IERC721Receiver, ICTDeployer { }); // Configure allowed posts. - if (allowedPosts.length > 0) PUBLISHER.configurePostingCriteriaFor(allowedPosts); + if (allowedPosts.length > 0) _configurePostingCriteriaFor(address(hook), allowedPosts); //transfer to _owner. CONTROLLER.PROJECTS().transferFrom(address(this), owner, projectId); } + + //*********************************************************************// + // --------------------- internal transactions ----------------------- // + //*********************************************************************// + + /// @notice Configure croptop posting. + /// @param hook The hook that will be posted to. + /// @param allowedPosts The type of posts that should be allowed. + function _configurePostingCriteriaFor(address hook, CTDeployerAllowedPost[] memory allowedPosts) internal { + // Keep a reference to the number of allowed posts. + uint256 numberOfAllowedPosts = allowedPosts.length; + + // Keep a reference to the formatted allowed posts. + CTAllowedPost[] memory formattedAllowedPosts = new CTAllowedPost[](numberOfAllowedPosts); + + // Keep a reference to the post being iterated on. + CTDeployerAllowedPost memory post; + + // Iterate through each post to add it to the formatted list. + for (uint256 i; i < numberOfAllowedPosts; i++) { + // Set the post being iterated on. + post = allowedPosts[i]; + + // Set the formatted post. + formattedAllowedPosts[i] = CTAllowedPost({ + hook: hook, + category: post.category, + minimumPrice: post.minimumPrice, + minimumTotalSupply: post.minimumTotalSupply, + maximumTotalSupply: post.maximumTotalSupply, + allowedAddresses: post.allowedAddresses + }); + } + + // Set up the allowed posts in the publisher. + PUBLISHER.configurePostingCriteriaFor({allowedPosts: formattedAllowedPosts}); + } } diff --git a/src/interfaces/ICTDeployer.sol b/src/interfaces/ICTDeployer.sol index e3d8987..2e701ea 100644 --- a/src/interfaces/ICTDeployer.sol +++ b/src/interfaces/ICTDeployer.sol @@ -1,12 +1,13 @@ // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; +import {IJB721TiersHook} from "@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol"; import {IJB721TiersHookProjectDeployer} from "@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol"; import {IJBController} from "@bananapus/core/src/interfaces/IJBController.sol"; import {JBTerminalConfig} from "@bananapus/core/src/structs/JBTerminalConfig.sol"; import {ICTPublisher} from "./ICTPublisher.sol"; -import {CTAllowedPost} from "../structs/CTAllowedPost.sol"; +import {CTDeployerAllowedPost} from "../structs/CTDeployerAllowedPost.sol"; interface ICTDeployer { function CONTROLLER() external view returns (IJBController); @@ -17,11 +18,11 @@ interface ICTDeployer { address owner, JBTerminalConfig[] calldata terminalConfigurations, string memory projectUri, - CTAllowedPost[] calldata allowedPosts, + CTDeployerAllowedPost[] calldata allowedPosts, string memory contractUri, string memory name, string memory symbol ) external - returns (uint256 projectId); + returns (uint256 projectId, IJB721TiersHook hook); } diff --git a/src/structs/CTDeployerAllowedPost.sol b/src/structs/CTDeployerAllowedPost.sol new file mode 100644 index 0000000..e016ab7 --- /dev/null +++ b/src/structs/CTDeployerAllowedPost.sol @@ -0,0 +1,17 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.0; + +/// @notice Criteria for allowed posts. +/// @custom:member category A category that should allow posts. +/// @custom:member minimumPrice The minimum price that a post to the specified category should cost. +/// @custom:member minimumTotalSupply The minimum total supply of NFTs that can be made available when minting. +/// @custom:member maxTotalSupply The max total supply of NFTs that can be made available when minting. Leave as 0 for +/// max. +/// @custom:member allowedAddresses A list of addresses that are allowed to post on the category through Croptop. +struct CTDeployerAllowedPost { + uint24 category; + uint104 minimumPrice; + uint32 minimumTotalSupply; + uint32 maximumTotalSupply; + address[] allowedAddresses; +} From 7d2cf55db4a376721b46ac367de1c075423d2427 Mon Sep 17 00:00:00 2001 From: 0xBA5ED <83727748+xBA5ED@users.noreply.github.com> Date: Fri, 20 Sep 2024 00:01:51 +0200 Subject: [PATCH 2/3] ci: re-deploy `CTDeployer`, added new artifacts --- .../c8660e6ab664b4186505e261472223cd.json | 947 ++++++++++++++++++ .../arbitrum_sepolia/CTDeployer.json | 96 +- ...0fc61f291da65860e33e3201cc41e966d8653.json | 221 ++++ .../base_sepolia/CTDeployer.json | 188 +--- ...0fc61f291da65860e33e3201cc41e966d8653.json | 221 ++++ .../optimism_sepolia/CTDeployer.json | 198 +--- ...0fc61f291da65860e33e3201cc41e966d8653.json | 221 ++++ .../sepolia/CTDeployer.json | 202 +--- ...0fc61f291da65860e33e3201cc41e966d8653.json | 221 ++++ lib/sphinx | 2 +- 10 files changed, 2022 insertions(+), 495 deletions(-) create mode 100644 deployments/compiler-inputs/c8660e6ab664b4186505e261472223cd.json create mode 100644 deployments/croptop-core-testnet/arbitrum_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json create mode 100644 deployments/croptop-core-testnet/base_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json create mode 100644 deployments/croptop-core-testnet/optimism_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json create mode 100644 deployments/croptop-core-testnet/sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json diff --git a/deployments/compiler-inputs/c8660e6ab664b4186505e261472223cd.json b/deployments/compiler-inputs/c8660e6ab664b4186505e261472223cd.json new file mode 100644 index 0000000..c5deb6d --- /dev/null +++ b/deployments/compiler-inputs/c8660e6ab664b4186505e261472223cd.json @@ -0,0 +1,947 @@ +{ + "solcVersion": "0.8.23", + "solcLongVersion": "0.8.23", + "id": "c8660e6ab664b4186505e261472223cd", + "input": { + "language": "Solidity", + "settings": { + "viaIR": false, + "optimizer": { + "runs": 100000000, + "enabled": true + }, + "metadata": { + "useLiteralContent": false, + "bytecodeHash": "ipfs", + "appendCBOR": true + }, + "outputSelection": { + "lib/forge-std/src/Base.sol": { + "*": [] + }, + "lib/forge-std/src/Script.sol": { + "*": [] + }, + "lib/forge-std/src/StdChains.sol": { + "*": [] + }, + "lib/forge-std/src/StdCheats.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": { + "*": [] + }, + "lib/forge-std/src/mocks/MockERC20.sol": { + "*": [] + }, + "lib/forge-std/src/mocks/MockERC721.sol": { + "*": [] + }, + "lib/forge-std/src/safeconsole.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/script/helpers/Hook721DeploymentLib.sol": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata", + "storageLayout" + ] + }, + "node_modules/@bananapus/721-hook/src/interfaces/IJB721Hook.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookDeployer.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata", + "storageLayout" + ] + }, + "node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookStore.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JB721Tier.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JB721TierConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JB721TiersHookFlags.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JB721TiersMintReservesConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JB721TiersSetDiscountPercentConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JBDeploy721TiersHookConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JBLaunchProjectConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JBLaunchRulesetsConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetMetadata.sol": { + "*": [] + }, + "node_modules/@bananapus/721-hook/src/structs/JBQueueRulesetsConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/buyback-hook/script/helpers/BuybackDeploymentLib.sol": { + "*": [] + }, + "node_modules/@bananapus/buyback-hook/src/interfaces/IJBBuybackHook.sol": { + "*": [] + }, + "node_modules/@bananapus/buyback-hook/src/interfaces/external/IWETH9.sol": { + "*": [] + }, + "node_modules/@bananapus/core/script/helpers/CoreDeploymentLib.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBController.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBDirectory.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBFeelessAddresses.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBFundAccessLimits.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBMultiTerminal.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBPermissions.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBPrices.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBProjects.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBRulesets.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBSplits.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBTerminalStore.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/JBTokens.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/abstract/JBControlled.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/abstract/JBPermissioned.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/enums/JBApprovalStatus.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBControlled.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBController.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBDirectory.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBDirectoryAccessControl.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBFeeTerminal.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBFeelessAddresses.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBFundAccessLimits.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBMigratable.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBMultiTerminal.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBPayHook.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBPayoutTerminal.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBPermissioned.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBPermissions.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBPermitTerminal.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBPriceFeed.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBPrices.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBProjectUriRegistry.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBProjects.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBRedeemHook.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBRedeemTerminal.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBRulesetApprovalHook.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBRulesetDataHook.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBRulesets.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBSplitHook.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBSplits.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBTerminal.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBTerminalStore.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBToken.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBTokenUriResolver.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/interfaces/IJBTokens.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/libraries/JBConstants.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/libraries/JBFees.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/libraries/JBFixedPointNumber.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/libraries/JBMetadataResolver.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/libraries/JBRedemptions.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/libraries/JBRulesetMetadataResolver.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/libraries/JBSplitGroupIds.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/libraries/JBSurplus.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBAccountingContext.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBAfterPayRecordedContext.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBAfterRedeemRecordedContext.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBBeforePayRecordedContext.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBBeforeRedeemRecordedContext.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBCurrencyAmount.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBFee.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBFundAccessLimitGroup.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBPayHookSpecification.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBPermissionsData.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBRedeemHookSpecification.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBRuleset.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBRulesetConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBRulesetMetadata.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBRulesetWeightCache.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBRulesetWithMetadata.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBSingleAllowance.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBSplit.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBSplitGroup.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBSplitHookContext.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBTerminalConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/core/src/structs/JBTokenAmount.sol": { + "*": [] + }, + "node_modules/@bananapus/ownable/src/JBOwnable.sol": { + "*": [] + }, + "node_modules/@bananapus/ownable/src/JBOwnableOverrides.sol": { + "*": [] + }, + "node_modules/@bananapus/ownable/src/interfaces/IJBOwnable.sol": { + "*": [] + }, + "node_modules/@bananapus/ownable/src/struct/JBOwner.sol": { + "*": [] + }, + "node_modules/@bananapus/permission-ids/src/JBPermissionIds.sol": { + "*": [] + }, + "node_modules/@bananapus/suckers/script/helpers/SuckerDeploymentLib.sol": { + "*": [] + }, + "node_modules/@bananapus/suckers/src/enums/JBAddToBalanceMode.sol": { + "*": [] + }, + "node_modules/@bananapus/suckers/src/interfaces/IJBSucker.sol": { + "*": [] + }, + "node_modules/@bananapus/suckers/src/interfaces/IJBSuckerDeployer.sol": { + "*": [] + }, + "node_modules/@bananapus/suckers/src/interfaces/IJBSuckerRegistry.sol": { + "*": [] + }, + "node_modules/@bananapus/suckers/src/structs/JBInboxTreeRoot.sol": { + "*": [] + }, + "node_modules/@bananapus/suckers/src/structs/JBOutboxTree.sol": { + "*": [] + }, + "node_modules/@bananapus/suckers/src/structs/JBRemoteToken.sol": { + "*": [] + }, + "node_modules/@bananapus/suckers/src/structs/JBSuckerDeployerConfig.sol": { + "*": [] + }, + "node_modules/@bananapus/suckers/src/structs/JBTokenMapping.sol": { + "*": [] + }, + "node_modules/@bananapus/suckers/src/utils/MerkleLib.sol": { + "*": [] + }, + "node_modules/@bananapus/swap-terminal/script/helpers/SwapTerminalDeploymentLib.sol": { + "*": [] + }, + "node_modules/@bananapus/swap-terminal/src/interfaces/IJBSwapTerminal.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/access/Ownable.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/interfaces/draft-IERC6093.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/metatx/ERC2771Context.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/proxy/Clones.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/token/ERC721/ERC721.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/utils/Address.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/utils/Context.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/utils/Strings.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/utils/introspection/ERC165.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/utils/math/Math.sol": { + "*": [] + }, + "node_modules/@openzeppelin/contracts/utils/math/SignedMath.sol": { + "*": [] + }, + "node_modules/@prb/math/src/Common.sol": { + "*": [] + }, + "node_modules/@rev-net/core/script/helpers/RevnetCoreDeploymentLib.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/interfaces/IREVDeployer.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/interfaces/IREVLoans.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/structs/REVAutoMint.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/structs/REVBuybackHookConfig.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/structs/REVBuybackPoolConfig.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/structs/REVConfig.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/structs/REVCroptopAllowedPost.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/structs/REVDeploy721TiersHookConfig.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/structs/REVDescription.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/structs/REVLoan.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/structs/REVLoanSource.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/structs/REVStageConfig.sol": { + "*": [] + }, + "node_modules/@rev-net/core/src/structs/REVSuckerDeploymentConfig.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/core/SphinxDataTypes.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/core/interfaces/ISphinxModule.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/core/interfaces/ISphinxModuleProxyFactory.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/forge-std/src/StdUtils.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/forge-std/src/Vm.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/forge-std/src/interfaces/IERC165.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/forge-std/src/interfaces/IERC20.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/forge-std/src/interfaces/IERC721.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/forge-std/src/interfaces/IMulticall3.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/forge-std/src/mocks/MockERC20.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/forge-std/src/mocks/MockERC721.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/Sphinx.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/SphinxConstants.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/SphinxForkCheck.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/SphinxPlugin.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/SphinxPluginTypes.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/SphinxUtils.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/interfaces/ICreateCall.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/interfaces/IEnum.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/interfaces/IGnosisSafe.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/interfaces/IGnosisSafeProxy.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/interfaces/IGnosisSafeProxyFactory.sol": { + "*": [] + }, + "node_modules/@sphinx-labs/contracts/contracts/foundry/interfaces/IMultiSend.sol": { + "*": [] + }, + "node_modules/@uniswap/permit2/src/interfaces/IAllowanceTransfer.sol": { + "*": [] + }, + "node_modules/@uniswap/permit2/src/interfaces/IEIP712.sol": { + "*": [] + }, + "node_modules/@uniswap/permit2/src/interfaces/IPermit2.sol": { + "*": [] + }, + "node_modules/@uniswap/permit2/src/interfaces/ISignatureTransfer.sol": { + "*": [] + }, + "node_modules/@uniswap/v3-core/contracts/interfaces/IUniswapV3Pool.sol": { + "*": [] + }, + "node_modules/@uniswap/v3-core/contracts/interfaces/callback/IUniswapV3SwapCallback.sol": { + "*": [] + }, + "node_modules/@uniswap/v3-core/contracts/interfaces/pool/IUniswapV3PoolActions.sol": { + "*": [] + }, + "node_modules/@uniswap/v3-core/contracts/interfaces/pool/IUniswapV3PoolDerivedState.sol": { + "*": [] + }, + "node_modules/@uniswap/v3-core/contracts/interfaces/pool/IUniswapV3PoolErrors.sol": { + "*": [] + }, + "node_modules/@uniswap/v3-core/contracts/interfaces/pool/IUniswapV3PoolEvents.sol": { + "*": [] + }, + "node_modules/@uniswap/v3-core/contracts/interfaces/pool/IUniswapV3PoolImmutables.sol": { + "*": [] + }, + "node_modules/@uniswap/v3-core/contracts/interfaces/pool/IUniswapV3PoolOwnerActions.sol": { + "*": [] + }, + "node_modules/@uniswap/v3-core/contracts/interfaces/pool/IUniswapV3PoolState.sol": { + "*": [] + }, + "script/ConfigureFeeProject.s.sol": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata", + "storageLayout" + ] + }, + "script/Deploy.s.sol": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata", + "storageLayout" + ] + }, + "script/helpers/CroptopDeploymentLib.sol": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata", + "storageLayout" + ] + }, + "src/CTDeployer.sol": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata", + "storageLayout" + ] + }, + "src/CTProjectOwner.sol": { + "*": [] + }, + "src/CTPublisher.sol": { + "*": [] + }, + "src/interfaces/ICTDeployer.sol": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata", + "storageLayout" + ] + }, + "src/interfaces/ICTProjectOwner.sol": { + "*": [] + }, + "src/interfaces/ICTPublisher.sol": { + "*": [] + }, + "src/structs/CTAllowedPost.sol": { + "*": [] + }, + "src/structs/CTDeployerAllowedPost.sol": { + "": [ + "ast" + ], + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata", + "storageLayout" + ] + }, + "src/structs/CTPost.sol": { + "*": [] + } + }, + "evmVersion": "paris", + "libraries": {}, + "remappings": [ + "@sphinx-labs/contracts/=node_modules/@sphinx-labs/contracts/contracts/foundry/", + "@croptop/core/=/", + "@arbitrum/=node_modules/@arbitrum/", + "@bananapus/=node_modules/@bananapus/", + "@chainlink/=node_modules/@chainlink/", + "@eth-optimism/=node_modules/@eth-optimism/", + "@exhausted-pigeon/=node_modules/@exhausted-pigeon/", + "@offchainlabs/=node_modules/@offchainlabs/", + "@openzeppelin/=node_modules/@openzeppelin/", + "@prb/=node_modules/@prb/", + "@rev-net/=node_modules/@rev-net/", + "@scroll-tech/=node_modules/@scroll-tech/", + "@uniswap/=node_modules/@uniswap/", + "base64-sol/=node_modules/base64-sol/", + "ds-test/=lib/forge-std/lib/ds-test/src/", + "forge-std/=lib/forge-std/src/", + "hardhat/=node_modules/hardhat/", + "solady/=node_modules/solady/", + "solmate/=node_modules/solmate/", + "sphinx/=lib/sphinx/packages/contracts/contracts/forge-std/src/" + ] + }, + "sources": { + "node_modules/@bananapus/721-hook/src/interfaces/IJB721Hook.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJBDirectory} from \"@bananapus/core/src/interfaces/IJBDirectory.sol\";\n\ninterface IJB721Hook {\n function DIRECTORY() external view returns (IJBDirectory);\n function METADATA_ID_TARGET() external view returns (address);\n function PROJECT_ID() external view returns (uint256);\n}\n" + }, + "node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJBPrices} from \"@bananapus/core/src/interfaces/IJBPrices.sol\";\nimport {IJBRulesets} from \"@bananapus/core/src/interfaces/IJBRulesets.sol\";\n\nimport {IJB721Hook} from \"./IJB721Hook.sol\";\nimport {IJB721TiersHookStore} from \"./IJB721TiersHookStore.sol\";\nimport {IJB721TokenUriResolver} from \"./IJB721TokenUriResolver.sol\";\nimport {JB721InitTiersConfig} from \"../structs/JB721InitTiersConfig.sol\";\nimport {JB721TierConfig} from \"../structs/JB721TierConfig.sol\";\nimport {JB721TiersHookFlags} from \"../structs/JB721TiersHookFlags.sol\";\nimport {JB721TiersMintReservesConfig} from \"../structs/JB721TiersMintReservesConfig.sol\";\nimport {JB721TiersSetDiscountPercentConfig} from \"../structs/JB721TiersSetDiscountPercentConfig.sol\";\n\ninterface IJB721TiersHook is IJB721Hook {\n event AddPayCredits(\n uint256 indexed amount, uint256 indexed newTotalCredits, address indexed account, address caller\n );\n event AddTier(uint256 indexed tierId, JB721TierConfig tier, address caller);\n event Mint(\n uint256 indexed tokenId,\n uint256 indexed tierId,\n address indexed beneficiary,\n uint256 totalAmountPaid,\n address caller\n );\n event MintReservedNft(uint256 indexed tokenId, uint256 indexed tierId, address indexed beneficiary, address caller);\n event RemoveTier(uint256 indexed tierId, address caller);\n event SetBaseUri(string indexed baseUri, address caller);\n event SetContractUri(string indexed uri, address caller);\n event SetDiscountPercent(uint256 indexed tierId, uint256 discountPercent, address caller);\n event SetEncodedIPFSUri(uint256 indexed tierId, bytes32 encodedUri, address caller);\n event SetTokenUriResolver(IJB721TokenUriResolver indexed resolver, address caller);\n event UsePayCredits(\n uint256 indexed amount, uint256 indexed newTotalCredits, address indexed account, address caller\n );\n\n function RULESETS() external view returns (IJBRulesets);\n function STORE() external view returns (IJB721TiersHookStore);\n\n function baseURI() external view returns (string memory);\n function contractURI() external view returns (string memory);\n function firstOwnerOf(uint256 tokenId) external view returns (address);\n function payCreditsOf(address addr) external view returns (uint256);\n function pricingContext() external view returns (uint256, uint256, IJBPrices);\n\n function adjustTiers(JB721TierConfig[] calldata tierDataToAdd, uint256[] calldata tierIdsToRemove) external;\n function initialize(\n uint256 projectId,\n string memory name,\n string memory symbol,\n string memory baseUri,\n IJB721TokenUriResolver tokenUriResolver,\n string memory contractUri,\n JB721InitTiersConfig memory tiersConfig,\n JB721TiersHookFlags memory flags\n )\n external;\n function setDiscountPercentOf(uint256 tierId, uint256 discountPercent) external;\n function setDiscountPercentsOf(JB721TiersSetDiscountPercentConfig[] calldata configs) external;\n function mintFor(uint16[] calldata tierIds, address beneficiary) external returns (uint256[] memory tokenIds);\n function mintPendingReservesFor(JB721TiersMintReservesConfig[] calldata reserveMintConfigs) external;\n function mintPendingReservesFor(uint256 tierId, uint256 count) external;\n function setMetadata(\n string calldata baseUri,\n string calldata contractMetadataUri,\n IJB721TokenUriResolver tokenUriResolver,\n uint256 encodedIPFSUriTierId,\n bytes32 encodedIPFSUri\n )\n external;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookDeployer.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJB721TiersHook} from \"./IJB721TiersHook.sol\";\nimport {JBDeploy721TiersHookConfig} from \"../structs/JBDeploy721TiersHookConfig.sol\";\n\ninterface IJB721TiersHookDeployer {\n event HookDeployed(uint256 indexed projectId, IJB721TiersHook hook, address caller);\n\n function deployHookFor(\n uint256 projectId,\n JBDeploy721TiersHookConfig memory deployTiersHookConfig\n )\n external\n returns (IJB721TiersHook hook);\n}\n" + }, + "node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJBDirectory} from \"@bananapus/core/src/interfaces/IJBDirectory.sol\";\nimport {IJBController} from \"@bananapus/core/src/interfaces/IJBController.sol\";\n\nimport {IJB721TiersHook} from \"./IJB721TiersHook.sol\";\nimport {IJB721TiersHookDeployer} from \"./IJB721TiersHookDeployer.sol\";\nimport {JBDeploy721TiersHookConfig} from \"../structs/JBDeploy721TiersHookConfig.sol\";\nimport {JBLaunchProjectConfig} from \"../structs/JBLaunchProjectConfig.sol\";\nimport {JBLaunchRulesetsConfig} from \"../structs/JBLaunchRulesetsConfig.sol\";\nimport {JBQueueRulesetsConfig} from \"../structs/JBQueueRulesetsConfig.sol\";\n\ninterface IJB721TiersHookProjectDeployer {\n function DIRECTORY() external view returns (IJBDirectory);\n function HOOK_DEPLOYER() external view returns (IJB721TiersHookDeployer);\n\n function launchProjectFor(\n address owner,\n JBDeploy721TiersHookConfig memory deployTiersHookConfig,\n JBLaunchProjectConfig memory launchProjectConfig,\n IJBController controller\n )\n external\n returns (uint256 projectId, IJB721TiersHook hook);\n\n function launchRulesetsFor(\n uint256 projectId,\n JBDeploy721TiersHookConfig memory deployTiersHookConfig,\n JBLaunchRulesetsConfig memory launchRulesetsConfig,\n IJBController controller\n )\n external\n returns (uint256 rulesetId, IJB721TiersHook hook);\n\n function queueRulesetsOf(\n uint256 projectId,\n JBDeploy721TiersHookConfig memory deployTiersHookConfig,\n JBQueueRulesetsConfig memory queueRulesetsConfig,\n IJBController controller\n )\n external\n returns (uint256 rulesetId, IJB721TiersHook hook);\n}\n" + }, + "node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookStore.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJB721TokenUriResolver} from \"./IJB721TokenUriResolver.sol\";\nimport {JB721Tier} from \"../structs/JB721Tier.sol\";\nimport {JB721TierConfig} from \"../structs/JB721TierConfig.sol\";\nimport {JB721TiersHookFlags} from \"../structs/JB721TiersHookFlags.sol\";\n\ninterface IJB721TiersHookStore {\n event CleanTiers(address indexed hook, address caller);\n\n function balanceOf(address hook, address owner) external view returns (uint256);\n function defaultReserveBeneficiaryOf(address hook) external view returns (address);\n function encodedIPFSUriOf(address hook, uint256 tierId) external view returns (bytes32);\n function encodedTierIPFSUriOf(address hook, uint256 tokenId) external view returns (bytes32);\n function flagsOf(address hook) external view returns (JB721TiersHookFlags memory);\n function isTierRemoved(address hook, uint256 tierId) external view returns (bool);\n function maxTierIdOf(address hook) external view returns (uint256);\n function numberOfBurnedFor(address hook, uint256 tierId) external view returns (uint256);\n function numberOfPendingReservesFor(address hook, uint256 tierId) external view returns (uint256);\n function numberOfReservesMintedFor(address hook, uint256 tierId) external view returns (uint256);\n function redemptionWeightOf(address hook, uint256[] calldata tokenIds) external view returns (uint256 weight);\n function reserveBeneficiaryOf(address hook, uint256 tierId) external view returns (address);\n function tierBalanceOf(address hook, address owner, uint256 tier) external view returns (uint256);\n function tierIdOfToken(uint256 tokenId) external pure returns (uint256);\n function tierOf(address hook, uint256 id, bool includeResolvedUri) external view returns (JB721Tier memory tier);\n function tierOfTokenId(\n address hook,\n uint256 tokenId,\n bool includeResolvedUri\n )\n external\n view\n returns (JB721Tier memory tier);\n\n function tiersOf(\n address hook,\n uint256[] calldata categories,\n bool includeResolvedUri,\n uint256 startingSortIndex,\n uint256 size\n )\n external\n view\n returns (JB721Tier[] memory tiers);\n\n function tierVotingUnitsOf(address hook, address account, uint256 tierId) external view returns (uint256 units);\n function tokenUriResolverOf(address hook) external view returns (IJB721TokenUriResolver);\n function totalRedemptionWeight(address hook) external view returns (uint256 weight);\n function totalSupplyOf(address hook) external view returns (uint256);\n function votingUnitsOf(address hook, address account) external view returns (uint256 units);\n\n function cleanTiers(address hook) external;\n function recordAddTiers(JB721TierConfig[] calldata tierData) external returns (uint256[] memory tierIds);\n function recordBurn(uint256[] calldata tokenIds) external;\n function recordFlags(JB721TiersHookFlags calldata flag) external;\n function recordMint(\n uint256 amount,\n uint16[] calldata tierIds,\n bool isOwnerMint\n )\n external\n returns (uint256[] memory tokenIds, uint256 leftoverAmount);\n function recordMintReservesFor(uint256 tierId, uint256 count) external returns (uint256[] memory tokenIds);\n function recordRemoveTierIds(uint256[] calldata tierIds) external;\n function recordSetEncodedIPFSUriOf(uint256 tierId, bytes32 encodedIPFSUri) external;\n function recordSetDiscountPercentOf(uint256 tierId, uint256 discountPercent) external;\n function recordSetTokenUriResolver(IJB721TokenUriResolver resolver) external;\n function recordTransferForTier(uint256 tierId, address from, address to) external;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface IJB721TokenUriResolver {\n function tokenUriOf(address nft, uint256 tokenId) external view returns (string memory tokenUri);\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJBPrices} from \"@bananapus/core/src/interfaces/IJBPrices.sol\";\n\nimport {JB721TierConfig} from \"./JB721TierConfig.sol\";\n\n/// @notice Config to initialize a `JB721TiersHook` with tiers and price data.\n/// @dev The `tiers` must be sorted by price (from least to greatest).\n/// @custom:member tiers The tiers to initialize the hook with.\n/// @custom:member currency The currency that the tier prices are denoted in. See `JBPrices`.\n/// @custom:member decimals The number of decimals in the fixed point tier prices.\n/// @custom:member prices A contract that exposes price feeds that can be used to calculate prices in different\n/// currencies. To only accept payments in `currency`, set `prices` to the zero address. See `JBPrices`.\nstruct JB721InitTiersConfig {\n JB721TierConfig[] tiers;\n uint32 currency;\n uint8 decimals;\n IJBPrices prices;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JB721Tier.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @custom:member id The tier's ID.\n/// @custom:member price The price to buy an NFT in this tier, in terms of the currency in its `JBInitTiersConfig`.\n/// @custom:member remainingSupply The remaining number of NFTs which can be minted from this tier.\n/// @custom:member initialSupply The total number of NFTs which can be minted from this tier.\n/// @custom:member votingUnits The number of votes that each NFT in this tier gets.\n/// @custom:member reserveFrequency The frequency at which an extra NFT is minted for the `reserveBeneficiary` from this\n/// tier. With a `reserveFrequency` of 5, an extra NFT will be minted for the `reserveBeneficiary` for every 5 NFTs\n/// purchased.\n/// @custom:member reserveBeneficiary The address which receives any reserve NFTs from this tier.\n/// @custom:member encodedIPFSUri The IPFS URI to use for each NFT in this tier.\n/// @custom:member category The category that NFTs in this tier belongs to. Used to group NFT tiers.\n/// @custom:member discountPercent The discount that should be applied to the tier.\n/// @custom:member allowOwnerMint A boolean indicating whether the contract's owner can mint NFTs from this tier\n/// on-demand.\n/// @custom:member cannotBeRemoved A boolean indicating whether attempts to remove this tier will revert.\n/// @custom:member cannotIncreaseDiscountPercent If the tier cannot have its discount increased.\n/// @custom:member transfersPausable A boolean indicating whether transfers for NFTs in tier can be paused.\n/// @custom:member resolvedUri A resolved token URI for NFTs in this tier. Only available if the NFT this tier belongs\n/// to has a resolver.\nstruct JB721Tier {\n uint32 id;\n uint104 price;\n uint32 remainingSupply;\n uint32 initialSupply;\n uint104 votingUnits;\n uint16 reserveFrequency;\n address reserveBeneficiary;\n bytes32 encodedIPFSUri;\n uint24 category;\n uint8 discountPercent;\n bool allowOwnerMint;\n bool transfersPausable;\n bool cannotBeRemoved;\n bool cannotIncreaseDiscountPercent;\n string resolvedUri;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JB721TierConfig.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @notice Config for a single NFT tier within a `JB721TiersHook`.\n/// @custom:member price The price to buy an NFT in this tier, in terms of the currency in its `JBInitTiersConfig`.\n/// @custom:member initialSupply The total number of NFTs which can be minted from this tier.\n/// @custom:member votingUnits The number of votes that each NFT in this tier gets if `useVotingUnits` is true.\n/// @custom:member reserveFrequency The frequency at which an extra NFT is minted for the `reserveBeneficiary` from this\n/// tier. With a `reserveFrequency` of 5, an extra NFT will be minted for the `reserveBeneficiary` for every 5 NFTs\n/// purchased.\n/// @custom:member reserveBeneficiary The address which receives any reserve NFTs from this tier. Overrides the default\n/// reserve beneficiary if one is set.\n/// @custom:member encodedIPFSUri The IPFS URI to use for each NFT in this tier.\n/// @custom:member category The category that NFTs in this tier belongs to. Used to group NFT tiers.\n/// @custom:member discountPercent The discount that should be applied to the tier.\n/// @custom:member allowOwnerMint A boolean indicating whether the contract's owner can mint NFTs from this tier\n/// on-demand.\n/// @custom:member useReserveBeneficiaryAsDefault A boolean indicating whether this tier's `reserveBeneficiary` should\n/// be stored as the default beneficiary for all tiers.\n/// @custom:member transfersPausable A boolean indicating whether transfers for NFTs in tier can be paused.\n/// @custom:member useVotingUnits A boolean indicating whether the `votingUnits` should be used to calculate voting\n/// power. If `useVotingUnits` is false, voting power is based on the tier's price.\n/// @custom:member cannotBeRemoved If the tier cannot be removed once added.\n/// @custom:member cannotIncreaseDiscount If the tier cannot have its discount increased.\nstruct JB721TierConfig {\n uint104 price;\n uint32 initialSupply;\n uint32 votingUnits;\n uint16 reserveFrequency;\n address reserveBeneficiary;\n bytes32 encodedIPFSUri;\n uint24 category;\n uint8 discountPercent;\n bool allowOwnerMint;\n bool useReserveBeneficiaryAsDefault;\n bool transfersPausable;\n bool useVotingUnits;\n bool cannotBeRemoved;\n bool cannotIncreaseDiscountPercent;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JB721TiersHookFlags.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @custom:member noNewTiersWithReserves A boolean indicating whether attempts to add new tiers with a non-zero\n/// `reserveFrequency` will revert.\n/// @custom:member noNewTiersWithVotes A boolean indicating whether attempts to add new tiers with non-zero\n/// `votingUnits` will revert.\n/// @custom:member noNewTiersWithOwnerMinting A boolean indicating whether attempts to add new tiers with\n/// `allowOwnerMint` set to true will revert.\n/// @custom:member preventOverspending A boolean indicating whether payments attempting to spend more than the price of\n/// the NFTs being minted will revert.\nstruct JB721TiersHookFlags {\n bool noNewTiersWithReserves;\n bool noNewTiersWithVotes;\n bool noNewTiersWithOwnerMinting;\n bool preventOverspending;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JB721TiersMintReservesConfig.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @custom:member tierId The ID of the tier to mint from.\n/// @custom:member count The number of NFTs to mint from that tier.\nstruct JB721TiersMintReservesConfig {\n uint32 tierId;\n uint16 count;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JB721TiersSetDiscountPercentConfig.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @custom:member tierId The ID of the tier to set the discount percent for.\n/// @custom:member discountPercent The discount percent to set for the tier.\nstruct JB721TiersSetDiscountPercentConfig {\n uint32 tierId;\n uint16 discountPercent;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JBDeploy721TiersHookConfig.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JB721InitTiersConfig} from \"./JB721InitTiersConfig.sol\";\nimport {JB721TiersHookFlags} from \"./JB721TiersHookFlags.sol\";\nimport {IJB721TokenUriResolver} from \"../interfaces/IJB721TokenUriResolver.sol\";\n\n/// @custom:member name The NFT collection's name.\n/// @custom:member symbol The NFT collection's symbol.\n/// @custom:member baseUri The URI to use as a base for full NFT URIs.\n/// @custom:member tokenUriResolver The contract responsible for resolving the URI for each NFT.\n/// @custom:member contractUri The URI where this contract's metadata can be found.\n/// @custom:member tiersConfig The NFT tiers and pricing config to launch the hook with.\n/// @custom:member reserveBeneficiary The default reserved beneficiary for all tiers.\n/// @custom:member flags A set of boolean options to configure the hook with.\nstruct JBDeploy721TiersHookConfig {\n string name;\n string symbol;\n string baseUri;\n IJB721TokenUriResolver tokenUriResolver;\n string contractUri;\n JB721InitTiersConfig tiersConfig;\n address reserveBeneficiary;\n JB721TiersHookFlags flags;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JBLaunchProjectConfig.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBTerminalConfig} from \"@bananapus/core/src/structs/JBTerminalConfig.sol\";\n\nimport {JBPayDataHookRulesetConfig} from \"./JBPayDataHookRulesetConfig.sol\";\n\n/// @custom:member projectUri Metadata URI to associate with the project. This can be updated any time by the owner of\n/// the project.\n/// @custom:member rulesetConfigurations The ruleset configurations to queue.\n/// @custom:member terminalConfigurations The terminal configurations to add for the project.\n/// @custom:member memo A memo to pass along to the emitted event.\nstruct JBLaunchProjectConfig {\n string projectUri;\n JBPayDataHookRulesetConfig[] rulesetConfigurations;\n JBTerminalConfig[] terminalConfigurations;\n string memo;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JBLaunchRulesetsConfig.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBTerminalConfig} from \"@bananapus/core/src/structs/JBTerminalConfig.sol\";\n\nimport {JBPayDataHookRulesetConfig} from \"./JBPayDataHookRulesetConfig.sol\";\n\n/// @custom:member projectId The ID of the project to launch rulesets for.\n/// @custom:member rulesetConfigurations The ruleset configurations to queue.\n/// @custom:member terminalConfigurations The terminal configurations to add for the project.\n/// @custom:member memo A memo to pass along to the emitted event.\nstruct JBLaunchRulesetsConfig {\n uint56 projectId;\n JBPayDataHookRulesetConfig[] rulesetConfigurations;\n JBTerminalConfig[] terminalConfigurations;\n string memo;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetConfig.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJBRulesetApprovalHook} from \"@bananapus/core/src/interfaces/IJBRulesetApprovalHook.sol\";\nimport {JBFundAccessLimitGroup} from \"@bananapus/core/src/structs/JBFundAccessLimitGroup.sol\";\nimport {JBSplitGroup} from \"@bananapus/core/src/structs/JBSplitGroup.sol\";\n\nimport {JBPayDataHookRulesetMetadata} from \"./JBPayDataHookRulesetMetadata.sol\";\n\n/// @custom:member mustStartAtOrAfter The earliest time the ruleset can start.\n/// @custom:member duration The number of seconds the ruleset lasts for, after which a new ruleset will start. A\n/// duration of 0 means that the ruleset will stay active until the project owner explicitly issues a reconfiguration,\n/// at which point a new ruleset will immediately start with the updated properties. If the duration is greater than 0,\n/// a project owner cannot make changes to a ruleset's parameters while it is active – any proposed changes will apply\n/// to the subsequent ruleset. If no changes are proposed, a ruleset rolls over to another one with the same properties\n/// but new `start` timestamp and a decayed `weight`.\n/// @custom:member weight A fixed point number with 18 decimals that contracts can use to base arbitrary calculations\n/// on. For example, payment terminals can use this to determine how many tokens should be minted when a payment is\n/// received.\n/// @custom:member decayPercent A percent by how much the `weight` of the subsequent ruleset should be reduced, if the\n/// project owner hasn't queued the subsequent ruleset with an explicit `weight`. If it's 0, each ruleset will have\n/// equal weight. If the number is 90%, the next ruleset will have a 10% smaller weight. This weight is out of\n/// `JBConstants.MAX_DECAY_PERCENT`.\n/// @custom:member approvalHook An address of a contract that says whether a proposed ruleset should be accepted or\n/// rejected. It\n/// can be used to create rules around how a project owner can change ruleset parameters over time.\n/// @custom:member metadata Metadata specifying the controller-specific parameters that a ruleset can have. These\n/// properties cannot change until the next ruleset starts.\n/// @custom:member splitGroups An array of splits to use for any number of groups while the ruleset is active.\n/// @custom:member fundAccessLimitGroups An array of structs which dictate the amount of funds a project can access from\n/// its balance in each payment terminal while the ruleset is active. Amounts are fixed point numbers using the same\n/// number of decimals as the corresponding terminal. The `payoutLimit` and `surplusAllowance` parameters must fit in\n/// a `uint232`.\nstruct JBPayDataHookRulesetConfig {\n uint48 mustStartAtOrAfter;\n uint32 duration;\n uint112 weight;\n uint32 decayPercent;\n IJBRulesetApprovalHook approvalHook;\n JBPayDataHookRulesetMetadata metadata;\n JBSplitGroup[] splitGroups;\n JBFundAccessLimitGroup[] fundAccessLimitGroups;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetMetadata.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @custom:member reservedPercent The reserved percent of the ruleset. This number is a percentage calculated out of\n/// `JBConstants.MAX_RESERVED_PERCENT`.\n/// @custom:member redemptionRate The redemption rate of the ruleset. This number is a percentage calculated out of\n/// `JBConstants.MAX_REDEMPTION_RATE`.\n/// @custom:member baseCurrency The currency on which to base the ruleset's weight.\n/// @custom:member pausePay A flag indicating if the pay functionality should be paused during the ruleset.\n/// @custom:member pauseCreditTransfers A flag indicating if the project token transfer functionality should be paused\n/// during the funding cycle.\n/// @custom:member allowOwnerMinting A flag indicating if the project owner or an operator with the `MINT_TOKENS`\n/// permission from the owner should be allowed to mint project tokens on demand during this ruleset.\n/// @custom:member allowTerminalMigration A flag indicating if migrating terminals should be allowed during this\n/// ruleset.\n/// @custom:member allowSetTerminals A flag indicating if a project's terminals can be added or removed.\n/// @custom:member allowSetController A flag indicating if a project's controller can be changed.\n/// @custom:member allowAddAccountingContext A flag indicating if a project can add new accounting contexts for its\n/// terminals to use.\n/// @custom:member allowAddPriceFeed A flag indicating if a project can add new price feeds to calculate exchange rates\n/// between its tokens.\n/// @custom:member allowCrosschainSuckerExtension A flag indicating if the crosschain sucker extension should be\n/// allowed during this ruleset.\n/// @custom:member holdFees A flag indicating if fees should be held during this ruleset.\n/// @custom:member useTotalSurplusForRedemptions A flag indicating if redemptions should use the project's balance held\n/// in all terminals instead of the project's local terminal balance from which the redemption is being fulfilled.\n/// @custom:member useDataHookForRedeem A flag indicating if the data hook should be used for redeem transactions during\n/// this ruleset.\n/// @custom:member metadata Metadata of the metadata, up to uint8 in size.\nstruct JBPayDataHookRulesetMetadata {\n uint16 reservedPercent;\n uint16 redemptionRate;\n uint32 baseCurrency;\n bool pausePay;\n bool pauseCreditTransfers;\n bool allowOwnerMinting;\n bool allowTerminalMigration;\n bool allowSetTerminals;\n bool allowSetController;\n bool allowAddAccountingContext;\n bool allowAddPriceFeed;\n bool allowCrosschainSuckerExtension;\n bool ownerMustSendPayouts;\n bool holdFees;\n bool useTotalSurplusForRedemptions;\n bool useDataHookForRedeem;\n uint16 metadata;\n}\n" + }, + "node_modules/@bananapus/721-hook/src/structs/JBQueueRulesetsConfig.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBPayDataHookRulesetConfig} from \"./JBPayDataHookRulesetConfig.sol\";\n\n/// @custom:member projectId The ID of the project to launch rulesets for.\n/// @custom:member rulesetConfigurations The ruleset configurations to queue.\n/// @custom:member terminalConfigurations The terminal configurations to add for the project.\n/// @custom:member memo A memo to pass along to the emitted event.\nstruct JBQueueRulesetsConfig {\n uint56 projectId;\n JBPayDataHookRulesetConfig[] rulesetConfigurations;\n string memo;\n}\n" + }, + "node_modules/@bananapus/core/src/enums/JBApprovalStatus.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @notice A ruleset's approval status in a ruleset approval hook.\nenum JBApprovalStatus {\n Empty,\n Upcoming,\n Active,\n ApprovalExpected,\n Approved,\n Failed\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBController.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IERC165} from \"@openzeppelin/contracts/utils/introspection/IERC165.sol\";\n\nimport {IJBDirectory} from \"./IJBDirectory.sol\";\nimport {IJBDirectoryAccessControl} from \"./IJBDirectoryAccessControl.sol\";\nimport {IJBFundAccessLimits} from \"./IJBFundAccessLimits.sol\";\nimport {IJBPriceFeed} from \"./IJBPriceFeed.sol\";\nimport {IJBPrices} from \"./IJBPrices.sol\";\nimport {IJBProjects} from \"./IJBProjects.sol\";\nimport {IJBProjectUriRegistry} from \"./IJBProjectUriRegistry.sol\";\nimport {IJBRulesets} from \"./IJBRulesets.sol\";\nimport {IJBSplits} from \"./IJBSplits.sol\";\nimport {IJBTerminal} from \"./IJBTerminal.sol\";\nimport {IJBToken} from \"./IJBToken.sol\";\nimport {IJBTokens} from \"./IJBTokens.sol\";\nimport {JBApprovalStatus} from \"./../enums/JBApprovalStatus.sol\";\nimport {JBRuleset} from \"./../structs/JBRuleset.sol\";\nimport {JBRulesetConfig} from \"./../structs/JBRulesetConfig.sol\";\nimport {JBRulesetMetadata} from \"./../structs/JBRulesetMetadata.sol\";\nimport {JBRulesetWithMetadata} from \"./../structs/JBRulesetWithMetadata.sol\";\nimport {JBSplit} from \"./../structs/JBSplit.sol\";\nimport {JBSplitGroup} from \"./../structs/JBSplitGroup.sol\";\nimport {JBTerminalConfig} from \"./../structs/JBTerminalConfig.sol\";\n\ninterface IJBController is IERC165, IJBProjectUriRegistry, IJBDirectoryAccessControl {\n event BurnTokens(\n address indexed holder, uint256 indexed projectId, uint256 tokenCount, string memo, address caller\n );\n event LaunchProject(uint256 rulesetId, uint256 projectId, string projectUri, string memo, address caller);\n event LaunchRulesets(uint256 rulesetId, uint256 projectId, string memo, address caller);\n event MintTokens(\n address indexed beneficiary,\n uint256 indexed projectId,\n uint256 tokenCount,\n uint256 beneficiaryTokenCount,\n string memo,\n uint256 reservedPercent,\n address caller\n );\n event PrepMigration(uint256 indexed projectId, address from, address caller);\n event QueueRulesets(uint256 rulesetId, uint256 projectId, string memo, address caller);\n event ReservedDistributionReverted(\n uint256 indexed projectId, JBSplit split, uint256 tokenCount, bytes reason, address caller\n );\n event SendReservedTokensToSplit(\n uint256 indexed projectId,\n uint256 indexed rulesetId,\n uint256 indexed groupId,\n JBSplit split,\n uint256 tokenCount,\n address caller\n );\n event SendReservedTokensToSplits(\n uint256 indexed rulesetId,\n uint256 indexed rulesetCycleNumber,\n uint256 indexed projectId,\n address owner,\n uint256 tokenCount,\n uint256 leftoverAmount,\n address caller\n );\n event SetUri(uint256 indexed projectId, string uri, address caller);\n\n function DIRECTORY() external view returns (IJBDirectory);\n function FUND_ACCESS_LIMITS() external view returns (IJBFundAccessLimits);\n function PRICES() external view returns (IJBPrices);\n function PROJECTS() external view returns (IJBProjects);\n function RULESETS() external view returns (IJBRulesets);\n function SPLITS() external view returns (IJBSplits);\n function TOKENS() external view returns (IJBTokens);\n\n function allRulesetsOf(\n uint256 projectId,\n uint256 startingId,\n uint256 size\n )\n external\n view\n returns (JBRulesetWithMetadata[] memory rulesets);\n function currentRulesetOf(uint256 projectId)\n external\n view\n returns (JBRuleset memory ruleset, JBRulesetMetadata memory metadata);\n function getRulesetOf(\n uint256 projectId,\n uint256 rulesetId\n )\n external\n view\n returns (JBRuleset memory ruleset, JBRulesetMetadata memory metadata);\n function latestQueuedRulesetOf(uint256 projectId)\n external\n view\n returns (JBRuleset memory, JBRulesetMetadata memory metadata, JBApprovalStatus);\n function pendingReservedTokenBalanceOf(uint256 projectId) external view returns (uint256);\n function totalTokenSupplyWithReservedTokensOf(uint256 projectId) external view returns (uint256);\n function upcomingRulesetOf(uint256 projectId)\n external\n view\n returns (JBRuleset memory ruleset, JBRulesetMetadata memory metadata);\n\n function addPriceFeed(\n uint256 projectId,\n uint256 pricingCurrency,\n uint256 unitCurrency,\n IJBPriceFeed feed\n )\n external;\n function burnTokensOf(address holder, uint256 projectId, uint256 tokenCount, string calldata memo) external;\n function claimTokensFor(address holder, uint256 projectId, uint256 tokenCount, address beneficiary) external;\n function deployERC20For(\n uint256 projectId,\n string calldata name,\n string calldata symbol,\n bytes32 salt\n )\n external\n returns (IJBToken token);\n function launchProjectFor(\n address owner,\n string calldata projectUri,\n JBRulesetConfig[] calldata rulesetConfigurations,\n JBTerminalConfig[] memory terminalConfigurations,\n string calldata memo\n )\n external\n returns (uint256 projectId);\n function launchRulesetsFor(\n uint256 projectId,\n JBRulesetConfig[] calldata rulesetConfigurations,\n JBTerminalConfig[] memory terminalConfigurations,\n string calldata memo\n )\n external\n returns (uint256 rulesetId);\n function mintTokensOf(\n uint256 projectId,\n uint256 tokenCount,\n address beneficiary,\n string calldata memo,\n bool useReservedPercent\n )\n external\n returns (uint256 beneficiaryTokenCount);\n function queueRulesetsOf(\n uint256 projectId,\n JBRulesetConfig[] calldata rulesetConfigurations,\n string calldata memo\n )\n external\n returns (uint256 rulesetId);\n function sendReservedTokensToSplitsOf(uint256 projectId) external returns (uint256);\n function setSplitGroupsOf(uint256 projectId, uint256 rulesetId, JBSplitGroup[] calldata splitGroups) external;\n function setTokenFor(uint256 projectId, IJBToken token) external;\n function transferCreditsFrom(address holder, uint256 projectId, address recipient, uint256 creditCount) external;\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBDirectory.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IERC165} from \"@openzeppelin/contracts/utils/introspection/IERC165.sol\";\n\nimport {IJBProjects} from \"./IJBProjects.sol\";\nimport {IJBTerminal} from \"./IJBTerminal.sol\";\n\ninterface IJBDirectory {\n event AddTerminal(uint256 indexed projectId, IJBTerminal indexed terminal, address caller);\n event SetController(uint256 indexed projectId, IERC165 indexed controller, address caller);\n event SetIsAllowedToSetFirstController(address indexed addr, bool indexed isAllowed, address caller);\n event SetPrimaryTerminal(\n uint256 indexed projectId, address indexed token, IJBTerminal indexed terminal, address caller\n );\n event SetTerminals(uint256 indexed projectId, IJBTerminal[] terminals, address caller);\n\n function PROJECTS() external view returns (IJBProjects);\n\n function controllerOf(uint256 projectId) external view returns (IERC165);\n function isAllowedToSetFirstController(address account) external view returns (bool);\n function isTerminalOf(uint256 projectId, IJBTerminal terminal) external view returns (bool);\n function primaryTerminalOf(uint256 projectId, address token) external view returns (IJBTerminal);\n function terminalsOf(uint256 projectId) external view returns (IJBTerminal[] memory);\n\n function setControllerOf(uint256 projectId, IERC165 controller) external;\n function setIsAllowedToSetFirstController(address account, bool flag) external;\n function setPrimaryTerminalOf(uint256 projectId, address token, IJBTerminal terminal) external;\n function setTerminalsOf(uint256 projectId, IJBTerminal[] calldata terminals) external;\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBDirectoryAccessControl.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface IJBDirectoryAccessControl {\n function setControllerAllowed(uint256 projectId) external view returns (bool);\n function setTerminalsAllowed(uint256 projectId) external view returns (bool);\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBFundAccessLimits.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBCurrencyAmount} from \"./../structs/JBCurrencyAmount.sol\";\nimport {JBFundAccessLimitGroup} from \"./../structs/JBFundAccessLimitGroup.sol\";\n\ninterface IJBFundAccessLimits {\n event SetFundAccessLimits(\n uint256 indexed rulesetId,\n uint256 indexed projectId,\n JBFundAccessLimitGroup fundAccessLimitGroup,\n address caller\n );\n\n function payoutLimitOf(\n uint256 projectId,\n uint256 rulesetId,\n address terminal,\n address token,\n uint256 currency\n )\n external\n view\n returns (uint256 payoutLimit);\n function payoutLimitsOf(\n uint256 projectId,\n uint256 rulesetId,\n address terminal,\n address token\n )\n external\n view\n returns (JBCurrencyAmount[] memory payoutLimits);\n function surplusAllowanceOf(\n uint256 projectId,\n uint256 rulesetId,\n address terminal,\n address token,\n uint256 currency\n )\n external\n view\n returns (uint256 surplusAllowance);\n function surplusAllowancesOf(\n uint256 projectId,\n uint256 rulesetId,\n address terminal,\n address token\n )\n external\n view\n returns (JBCurrencyAmount[] memory surplusAllowances);\n\n function setFundAccessLimitsFor(\n uint256 projectId,\n uint256 rulesetId,\n JBFundAccessLimitGroup[] memory fundAccessLimitGroups\n )\n external;\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBPayHook.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IERC165} from \"@openzeppelin/contracts/utils/introspection/IERC165.sol\";\n\nimport {JBAfterPayRecordedContext} from \"./../structs/JBAfterPayRecordedContext.sol\";\n\n/// @notice Hook called after a terminal's `pay(...)` logic completes (if passed by the ruleset's data hook).\ninterface IJBPayHook is IERC165 {\n /// @notice This function is called by the terminal's `pay(...)` function after the payment has been recorded in the\n /// terminal store.\n /// @dev Critical business logic should be protected by appropriate access control.\n /// @param context The context passed in by the terminal, as a `JBAfterPayRecordedContext` struct.\n function afterPayRecordedWith(JBAfterPayRecordedContext calldata context) external payable;\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBPriceFeed.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface IJBPriceFeed {\n function currentUnitPrice(uint256 targetDecimals) external view returns (uint256);\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBPrices.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJBPriceFeed} from \"./IJBPriceFeed.sol\";\nimport {IJBProjects} from \"./IJBProjects.sol\";\n\ninterface IJBPrices {\n event AddPriceFeed(\n uint256 indexed projectId,\n uint256 indexed pricingCurrency,\n uint256 indexed unitCurrency,\n IJBPriceFeed feed,\n address caller\n );\n\n function DEFAULT_PROJECT_ID() external view returns (uint256);\n function PROJECTS() external view returns (IJBProjects);\n\n function priceFeedFor(\n uint256 projectId,\n uint256 pricingCurrency,\n uint256 unitCurrency\n )\n external\n view\n returns (IJBPriceFeed);\n function pricePerUnitOf(\n uint256 projectId,\n uint256 pricingCurrency,\n uint256 unitCurrency,\n uint256 decimals\n )\n external\n view\n returns (uint256);\n\n function addPriceFeedFor(\n uint256 projectId,\n uint256 pricingCurrency,\n uint256 unitCurrency,\n IJBPriceFeed feed\n )\n external;\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBProjectUriRegistry.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface IJBProjectUriRegistry {\n function uriOf(uint256 projectId) external view returns (string memory);\n function setUriOf(uint256 projectId, string calldata uri) external;\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBProjects.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IERC721} from \"@openzeppelin/contracts/token/ERC721/IERC721.sol\";\n\nimport {IJBTokenUriResolver} from \"./IJBTokenUriResolver.sol\";\n\ninterface IJBProjects is IERC721 {\n event Create(uint256 indexed projectId, address indexed owner, address caller);\n event SetTokenUriResolver(IJBTokenUriResolver indexed resolver, address caller);\n\n function count() external view returns (uint256);\n function tokenUriResolver() external view returns (IJBTokenUriResolver);\n\n function createFor(address owner) external returns (uint256 projectId);\n function setTokenUriResolver(IJBTokenUriResolver resolver) external;\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBRulesetApprovalHook.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IERC165} from \"@openzeppelin/contracts/utils/introspection/IERC165.sol\";\n\nimport {JBApprovalStatus} from \"./../enums/JBApprovalStatus.sol\";\n\n/// @notice `IJBRulesetApprovalHook`s are used to determine whether the next ruleset in the ruleset queue is approved or\n/// rejected.\n/// @dev Project rulesets are stored in a queue. Rulesets take effect after the previous ruleset in the queue ends, and\n/// only if they are approved by the previous ruleset's approval hook.\ninterface IJBRulesetApprovalHook is IERC165 {\n function DURATION() external view returns (uint256);\n\n function approvalStatusOf(\n uint256 projectId,\n uint256 rulesetId,\n uint256 start\n )\n external\n view\n returns (JBApprovalStatus);\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBRulesets.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBApprovalStatus} from \"./../enums/JBApprovalStatus.sol\";\nimport {JBRuleset} from \"./../structs/JBRuleset.sol\";\nimport {IJBRulesetApprovalHook} from \"./IJBRulesetApprovalHook.sol\";\n\ninterface IJBRulesets {\n event RulesetInitialized(\n uint256 indexed rulesetId, uint256 indexed projectId, uint256 indexed basedOnId, address caller\n );\n event RulesetQueued(\n uint256 indexed rulesetId,\n uint256 indexed projectId,\n uint256 duration,\n uint256 weight,\n uint256 decayPercent,\n IJBRulesetApprovalHook approvalHook,\n uint256 metadata,\n uint256 mustStartAtOrAfter,\n address caller\n );\n\n function latestRulesetIdOf(uint256 projectId) external view returns (uint256);\n\n function currentApprovalStatusForLatestRulesetOf(uint256 projectId) external view returns (JBApprovalStatus);\n function currentOf(uint256 projectId) external view returns (JBRuleset memory ruleset);\n function getRulesetOf(uint256 projectId, uint256 rulesetId) external view returns (JBRuleset memory);\n function latestQueuedOf(uint256 projectId)\n external\n view\n returns (JBRuleset memory ruleset, JBApprovalStatus approvalStatus);\n function allOf(\n uint256 projectId,\n uint256 startingId,\n uint256 size\n )\n external\n view\n returns (JBRuleset[] memory rulesets);\n function upcomingOf(uint256 projectId) external view returns (JBRuleset memory ruleset);\n\n function queueFor(\n uint256 projectId,\n uint256 duration,\n uint256 weight,\n uint256 decayPercent,\n IJBRulesetApprovalHook approvalHook,\n uint256 metadata,\n uint256 mustStartAtOrAfter\n )\n external\n returns (JBRuleset memory ruleset);\n function updateRulesetWeightCache(uint256 projectId) external;\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBSplitHook.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IERC165} from \"@openzeppelin/contracts/utils/introspection/IERC165.sol\";\n\nimport {JBSplitHookContext} from \"../structs/JBSplitHookContext.sol\";\n\n/// @title Split hook\n/// @notice Allows processing a single split with custom logic.\n/// @dev The split hook's address should be set as the `hook` in the relevant split.\ninterface IJBSplitHook is IERC165 {\n /// @notice If a split has a split hook, payment terminals and controllers call this function while processing the\n /// split.\n /// @dev Critical business logic should be protected by appropriate access control. The tokens and/or native tokens\n /// are optimistically transferred to the split hook when this function is called.\n /// @param context The context passed by the terminal/controller to the split hook as a `JBSplitHookContext` struct:\n function processSplitWith(JBSplitHookContext calldata context) external payable;\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBSplits.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBSplit} from \"./../structs/JBSplit.sol\";\nimport {JBSplitGroup} from \"./../structs/JBSplitGroup.sol\";\n\ninterface IJBSplits {\n event SetSplit(\n uint256 indexed projectId, uint256 indexed rulesetId, uint256 indexed groupId, JBSplit split, address caller\n );\n\n function FALLBACK_RULESET_ID() external view returns (uint256);\n\n function splitsOf(uint256 projectId, uint256 rulesetId, uint256 groupId) external view returns (JBSplit[] memory);\n\n function setSplitGroupsOf(uint256 projectId, uint256 rulesetId, JBSplitGroup[] memory splitGroups) external;\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBTerminal.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IERC165} from \"@openzeppelin/contracts/utils/introspection/IERC165.sol\";\n\nimport {IJBPayHook} from \"./IJBPayHook.sol\";\nimport {JBAccountingContext} from \"../structs/JBAccountingContext.sol\";\nimport {JBAfterPayRecordedContext} from \"../structs/JBAfterPayRecordedContext.sol\";\n\n/// @notice A terminal that accepts payments and can be migrated.\ninterface IJBTerminal is IERC165 {\n event AddToBalance(\n uint256 indexed projectId, uint256 amount, uint256 returnedFees, string memo, bytes metadata, address caller\n );\n event HookAfterRecordPay(\n IJBPayHook indexed hook, JBAfterPayRecordedContext context, uint256 specificationAmount, address caller\n );\n\n event MigrateTerminal(\n uint256 indexed projectId, address indexed token, IJBTerminal indexed to, uint256 amount, address caller\n );\n event Pay(\n uint256 indexed rulesetId,\n uint256 indexed rulesetCycleNumber,\n uint256 indexed projectId,\n address payer,\n address beneficiary,\n uint256 amount,\n uint256 beneficiaryTokenCount,\n string memo,\n bytes metadata,\n address caller\n );\n event SetAccountingContext(uint256 indexed projectId, JBAccountingContext context, address caller);\n\n function accountingContextForTokenOf(\n uint256 projectId,\n address token\n )\n external\n view\n returns (JBAccountingContext memory);\n function accountingContextsOf(uint256 projectId) external view returns (JBAccountingContext[] memory);\n function currentSurplusOf(uint256 projectId, uint256 decimals, uint256 currency) external view returns (uint256);\n\n function addAccountingContextsFor(uint256 projectId, JBAccountingContext[] calldata accountingContexts) external;\n function addToBalanceOf(\n uint256 projectId,\n address token,\n uint256 amount,\n bool shouldReturnHeldFees,\n string calldata memo,\n bytes calldata metadata\n )\n external\n payable;\n function migrateBalanceOf(uint256 projectId, address token, IJBTerminal to) external returns (uint256 balance);\n function pay(\n uint256 projectId,\n address token,\n uint256 amount,\n address beneficiary,\n uint256 minReturnedTokens,\n string calldata memo,\n bytes calldata metadata\n )\n external\n payable\n returns (uint256 beneficiaryTokenCount);\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBToken.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface IJBToken {\n function balanceOf(address account) external view returns (uint256);\n function decimals() external view returns (uint8);\n function totalSupply() external view returns (uint256);\n\n function initialize(string memory name, string memory symbol, address owner) external;\n function burn(address account, uint256 amount) external;\n function mint(address account, uint256 amount) external;\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBTokenUriResolver.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface IJBTokenUriResolver {\n function getUri(uint256 projectId) external view returns (string memory tokenUri);\n}\n" + }, + "node_modules/@bananapus/core/src/interfaces/IJBTokens.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJBToken} from \"./IJBToken.sol\";\n\ninterface IJBTokens {\n event DeployERC20(\n uint256 indexed projectId, IJBToken indexed token, string name, string symbol, bytes32 salt, address caller\n );\n event Burn(\n address indexed holder,\n uint256 indexed projectId,\n uint256 count,\n uint256 creditBalance,\n uint256 tokenBalance,\n address caller\n );\n event ClaimTokens(\n address indexed holder,\n uint256 indexed projectId,\n uint256 creditBalance,\n uint256 count,\n address beneficiary,\n address caller\n );\n event Mint(\n address indexed holder, uint256 indexed projectId, uint256 count, bool shouldClaimTokens, address caller\n );\n event SetToken(uint256 indexed projectId, IJBToken indexed token, address caller);\n event TransferCredits(\n address indexed holder, uint256 indexed projectId, address indexed recipient, uint256 count, address caller\n );\n\n function creditBalanceOf(address holder, uint256 projectId) external view returns (uint256);\n function projectIdOf(IJBToken token) external view returns (uint256);\n function tokenOf(uint256 projectId) external view returns (IJBToken);\n function totalCreditSupplyOf(uint256 projectId) external view returns (uint256);\n\n function totalBalanceOf(address holder, uint256 projectId) external view returns (uint256 result);\n function totalSupplyOf(uint256 projectId) external view returns (uint256);\n\n function burnFrom(address holder, uint256 projectId, uint256 count) external;\n function claimTokensFor(address holder, uint256 projectId, uint256 count, address beneficiary) external;\n function deployERC20For(\n uint256 projectId,\n string calldata name,\n string calldata symbol,\n bytes32 salt\n )\n external\n returns (IJBToken token);\n function mintFor(address holder, uint256 projectId, uint256 count) external;\n function setTokenFor(uint256 projectId, IJBToken token) external;\n function transferCreditsFrom(address holder, uint256 projectId, address recipient, uint256 count) external;\n}\n" + }, + "node_modules/@bananapus/core/src/libraries/JBConstants.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @notice Global constants used across Juicebox contracts.\nlibrary JBConstants {\n /// @notice Each chain's native token address in Juicebox is represented by\n /// 0x000000000000000000000000000000000000EEEe.\n address public constant NATIVE_TOKEN = address(0x000000000000000000000000000000000000EEEe);\n uint16 public constant MAX_RESERVED_PERCENT = 10_000;\n uint16 public constant MAX_REDEMPTION_RATE = 10_000;\n uint32 public constant MAX_DECAY_PERCENT = 1_000_000_000;\n uint32 public constant SPLITS_TOTAL_PERCENT = 1_000_000_000;\n uint16 public constant MAX_FEE = 1000;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBAccountingContext.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @custom:member token The address of the token that accounting is being done with.\n/// @custom:member decimals The number of decimals expected in that token's fixed point accounting.\n/// @custom:member currency The currency that the token is priced in terms of. By convention, this is\n/// `uint32(uint160(tokenAddress))` for tokens, or a constant ID from e.g. `JBCurrencyIds` for other currencies.\nstruct JBAccountingContext {\n address token;\n uint8 decimals;\n uint32 currency;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBAfterPayRecordedContext.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBTokenAmount} from \"./JBTokenAmount.sol\";\n\n/// @custom:member payer The address the payment originated from.\n/// @custom:member projectId The ID of the project being paid.\n/// @custom:member rulesetId The ID of the ruleset the payment is being made during.\n/// @custom:member amount The payment's token amount. Includes the token being paid, the value, the number of decimals\n/// included, and the currency of the amount.\n/// @custom:member forwardedAmount The token amount being forwarded to the pay hook. Includes the token\n/// being paid, the value, the number of decimals included, and the currency of the amount.\n/// @custom:member weight The current ruleset's weight (used to determine how many tokens should be minted).\n/// @custom:member projectTokenCount The number of project tokens minted for the beneficiary.\n/// @custom:member beneficiary The address which receives any tokens this payment yields.\n/// @custom:member hookMetadata Extra data specified by the data hook, which is sent to the pay hook.\n/// @custom:member payerMetadata Extra data specified by the payer, which is sent to the pay hook.\nstruct JBAfterPayRecordedContext {\n address payer;\n uint256 projectId;\n uint256 rulesetId;\n JBTokenAmount amount;\n JBTokenAmount forwardedAmount;\n uint256 weight;\n uint256 projectTokenCount;\n address beneficiary;\n bytes hookMetadata;\n bytes payerMetadata;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBCurrencyAmount.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @custom:member amount The amount of the currency.\n/// @custom:member currency The currency. By convention, this is `uint32(uint160(tokenAddress))` for tokens, or a\n/// constant ID from e.g. `JBCurrencyIds` for other currencies.\nstruct JBCurrencyAmount {\n uint224 amount;\n uint32 currency;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBFundAccessLimitGroup.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBCurrencyAmount} from \"./JBCurrencyAmount.sol\";\n\n/// @dev Payout limit example: if the `amount` is 5, the `currency` is 1 (USD), and the terminal's token is ETH, then\n/// the project can pay out 5 USD worth of ETH during a ruleset.\n/// @dev Surplus allowance example: if the `amount` is 5, the `currency` is 1 (USD), and the terminal's token is ETH,\n/// then the project can pay out 5 USD worth of ETH from its surplus during a ruleset. A project's surplus is its\n/// balance minus its current combined payout limit.\n/// @dev If a project has multiple payout limits or surplus allowances, they are all available. They can all be used\n/// during a single ruleset.\n/// @dev The payout limits' and surplus allowances' fixed point amounts have the same number of decimals as the\n/// terminal.\n/// @custom:member terminal The terminal that the payout limits and surplus allowances apply to.\n/// @custom:member token The token that the payout limits and surplus allowances apply to within the `terminal`.\n/// @custom:member payoutLimits An array of payout limits. The payout limits cumulatively dictate the maximum value of\n/// `token`s a project can pay out from its balance in a terminal during a ruleset. Each payout limit can have a unique\n/// currency and amount.\n/// @custom:member surplusAllowances An array of surplus allowances. The surplus allowances cumulatively dictates the\n/// maximum value of `token`s a project can pay out from its surplus (balance less payouts) in a terminal during a\n/// ruleset. Each surplus allowance can have a unique currency and amount.\nstruct JBFundAccessLimitGroup {\n address terminal;\n address token;\n JBCurrencyAmount[] payoutLimits;\n JBCurrencyAmount[] surplusAllowances;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBRuleset.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJBRulesetApprovalHook} from \"./../interfaces/IJBRulesetApprovalHook.sol\";\n\n/// @dev `JBRuleset` timestamps are unix timestamps (seconds since 00:00 January 1st, 1970 UTC).\n/// @custom:member cycleNumber The ruleset's cycle number. Each ruleset's `cycleNumber` is the previous ruleset's\n/// `cycleNumber` plus one. Each project's first ruleset has a `cycleNumber` of 1.\n/// @custom:member id The ruleset's ID, which is a timestamp of when this ruleset's rules were initialized. The\n/// `rulesetId` stays the same for rulesets that automatically cycle over from a manually queued ruleset.\n/// @custom:member basedOnId The `rulesetId` of the ruleset which was active when this ruleset was created.\n/// @custom:member start The timestamp from which this ruleset is considered active.\n/// @custom:member duration The number of seconds the ruleset lasts for. After this duration, a new ruleset will start.\n/// The project owner can queue new rulesets at any time, which will take effect once the current ruleset's duration is\n/// over. If the `duration` is 0, newly queued rulesets will take effect immediately. If a ruleset ends and there are no\n/// new rulesets queued, the current ruleset cycles over to another one with the same properties but a new `start`\n/// timestamp and a `weight` reduced by the ruleset's `decayPercent`.\n/// @custom:member weight A fixed point number with 18 decimals which is typically used by payment terminals to\n/// determine how many tokens should be minted when a payment is received. This can be used by other contracts for\n/// arbitrary calculations.\n/// @custom:member decayPercent The percentage by which to reduce the `weight` each time a new ruleset starts. `weight`\n/// is\n/// a percentage out of `JBConstants.MAX_DECAY_PERCENT`. If it's 0, the next ruleset will have the same `weight` by\n/// default. If it's 90%, the next ruleset's `weight` will be 10% smaller. If a ruleset explicitly sets a new `weight`,\n/// the `decayPercent` doesn't apply.\n/// @custom:member approvalHook An address of a contract that says whether a queued ruleset should be approved or\n/// rejected. If a\n/// ruleset is rejected, it won't go into effect. An approval hook can be used to create rules which dictate how a\n/// project owner can change their ruleset over time.\n/// @custom:member metadata Extra data associated with a ruleset which can be used by other contracts.\nstruct JBRuleset {\n uint48 cycleNumber;\n uint48 id;\n uint48 basedOnId;\n uint48 start;\n uint32 duration;\n uint112 weight;\n uint32 decayPercent;\n IJBRulesetApprovalHook approvalHook;\n uint256 metadata;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBRulesetConfig.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJBRulesetApprovalHook} from \"../interfaces/IJBRulesetApprovalHook.sol\";\nimport {JBFundAccessLimitGroup} from \"./JBFundAccessLimitGroup.sol\";\nimport {JBRulesetMetadata} from \"./JBRulesetMetadata.sol\";\nimport {JBSplitGroup} from \"./JBSplitGroup.sol\";\n\n/// @custom:member mustStartAtOrAfter The earliest time the ruleset can start.\n/// @custom:member duration The number of seconds the ruleset lasts for, after which a new ruleset will start. A\n/// duration of 0 means that the ruleset will stay active until the project owner explicitly issues a reconfiguration,\n/// at which point a new ruleset will immediately start with the updated properties. If the duration is greater than 0,\n/// a project owner cannot make changes to a ruleset's parameters while it is active – any proposed changes will apply\n/// to the subsequent ruleset. If no changes are proposed, a ruleset rolls over to another one with the same properties\n/// but new `start` timestamp and a decayed `weight`.\n/// @custom:member weight A fixed point number with 18 decimals that contracts can use to base arbitrary calculations\n/// on. For example, payment terminals can use this to determine how many tokens should be minted when a payment is\n/// received.\n/// @custom:member decayPercent A percent by how much the `weight` of the subsequent ruleset should be reduced, if the\n/// project owner hasn't queued the subsequent ruleset with an explicit `weight`. If it's 0, each ruleset will have\n/// equal weight. If the number is 90%, the next ruleset will have a 10% smaller weight. This weight is out of\n/// `JBConstants.MAX_DECAY_PERCENT`.\n/// @custom:member approvalHook An address of a contract that says whether a proposed ruleset should be accepted or\n/// rejected. It\n/// can be used to create rules around how a project owner can change ruleset parameters over time.\n/// @custom:member metadata Metadata specifying the controller-specific parameters that a ruleset can have. These\n/// properties cannot change until the next ruleset starts.\n/// @custom:member splitGroups An array of splits to use for any number of groups while the ruleset is active.\n/// @custom:member fundAccessLimitGroups An array of structs which dictate the amount of funds a project can access from\n/// its balance in each payment terminal while the ruleset is active. Amounts are fixed point numbers using the same\n/// number of decimals as the corresponding terminal. The `_payoutLimit` and `_surplusAllowance` parameters must fit in\n/// a `uint232`.\nstruct JBRulesetConfig {\n uint48 mustStartAtOrAfter;\n uint32 duration;\n uint112 weight;\n uint32 decayPercent;\n IJBRulesetApprovalHook approvalHook;\n JBRulesetMetadata metadata;\n JBSplitGroup[] splitGroups;\n JBFundAccessLimitGroup[] fundAccessLimitGroups;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBRulesetMetadata.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @custom:member reservedPercent The reserved percent of the ruleset. This number is a percentage calculated out of\n/// `JBConstants.MAX_RESERVED_PERCENT`.\n/// @custom:member redemptionRate The redemption rate of the ruleset. This number is a percentage calculated out of\n/// `JBConstants.MAX_REDEMPTION_RATE`.\n/// @custom:member baseCurrency The currency on which to base the ruleset's weight. By convention, this is\n/// `uint32(uint160(tokenAddress))` for tokens, or a constant ID from e.g. `JBCurrencyIds` for other currencies.\n/// @custom:member pausePay A flag indicating if the pay functionality should be paused during the ruleset.\n/// @custom:member pauseCreditTransfers A flag indicating if the project token transfer functionality should be paused\n/// during the funding cycle.\n/// @custom:member allowOwnerMinting A flag indicating if the project owner or an operator with the `MINT_TOKENS`\n/// permission from the owner should be allowed to mint project tokens on demand during this ruleset.\n/// @custom:member allowTerminalMigration A flag indicating if migrating terminals should be allowed during this\n/// ruleset.\n/// @custom:member allowSetTerminals A flag indicating if a project's terminals can be added or removed.\n/// @custom:member allowSetController A flag indicating if a project's controller can be changed.\n/// @custom:member allowAddAccountingContext A flag indicating if a project can add new accounting contexts for its\n/// terminals to use.\n/// @custom:member allowAddPriceFeed A flag indicating if a project can add new price feeds to calculate exchange rates\n/// between its tokens.\n/// @custom:member allowCrosschainSuckerExtension A flag indicating if the crosschain sucker extension should be\n/// allowed during this ruleset.\n/// @custom:member ownerMustSendPayouts A flag indicating if privileged payout distribution should be\n/// enforced, otherwise payouts can be distributed by anyone.\n/// @custom:member holdFees A flag indicating if fees should be held during this ruleset.\n/// @custom:member useTotalSurplusForRedemptions A flag indicating if redemptions should use the project's balance held\n/// in all terminals instead of the project's local terminal balance from which the redemption is being fulfilled.\n/// @custom:member useDataHookForPay A flag indicating if the data hook should be used for pay transactions during this\n/// ruleset.\n/// @custom:member useDataHookForRedeem A flag indicating if the data hook should be used for redeem transactions during\n/// this ruleset.\n/// @custom:member dataHook The data hook to use during this ruleset.\n/// @custom:member metadata Metadata of the metadata, up to uint16 in size though only the first 14 bits can be used.\nstruct JBRulesetMetadata {\n uint16 reservedPercent;\n uint16 redemptionRate;\n uint32 baseCurrency;\n bool pausePay;\n bool pauseCreditTransfers;\n bool allowOwnerMinting;\n bool allowSetCustomToken;\n bool allowTerminalMigration;\n bool allowSetTerminals;\n bool allowSetController;\n bool allowAddAccountingContext;\n bool allowAddPriceFeed;\n bool allowCrosschainSuckerExtension;\n bool ownerMustSendPayouts;\n bool holdFees;\n bool useTotalSurplusForRedemptions;\n bool useDataHookForPay;\n bool useDataHookForRedeem;\n address dataHook;\n uint16 metadata;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBRulesetWithMetadata.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBRuleset} from \"./JBRuleset.sol\";\nimport {JBRulesetMetadata} from \"./JBRulesetMetadata.sol\";\n\n/// @custom:member ruleset The ruleset.\n/// @custom:member metadata The ruleset's metadata.\nstruct JBRulesetWithMetadata {\n JBRuleset ruleset;\n JBRulesetMetadata metadata;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBSplit.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJBSplitHook} from \"./../interfaces/IJBSplitHook.sol\";\n\n/// @notice Splits are used to send a percentage of a total token amount to a specific contract, project, or address.\n/// Splits are used to send payouts and reserved tokens.\n/// @dev 1. If a non-zero split hook contract is specified, this split's tokens are sent there along with this split's\n/// properties.\n/// @dev 2. Otherwise, if a non-zero project ID is specified, this split's tokens are used to `pay` it through its\n/// terminal if possible, or sent to the project's owner if not. If this payment yields tokens, those go to the split's\n/// `beneficiary`.\n/// @dev 3. Otherwise, this split's tokens are sent directly to the `beneficiary`.\n/// @dev To summarize, this split's tokens are sent according to the following priority: `split hook` > `projectId` >\n/// `beneficiary`.\n/// @custom:member preferAddToBalance If this split were to `pay` a project through its terminal, this flag indicates\n/// whether it should prefer using the terminal's `addToBalance` function instead.\n/// @custom:member percent The percent of the total token amount that this split sends. This number is out of\n/// `JBConstants.SPLITS_TOTAL_PERCENT`.\n/// @custom:member projectId The ID of a project to `pay`, if applicable. Resulting tokens will be routed to the\n/// `beneficiary`.\n/// @custom:member beneficiary Receives this split's tokens if the `hook` and `projectId` are zero. If the `projectId`\n/// is specified, the `beneficiary` receives any project tokens minted by this split.\n/// @custom:member lockedUntil The split cannot be changed until this timestamp. The `lockedUntil` timestamp can be\n/// increased while a split is locked. If `lockedUntil` is zero, this split can be changed at any time.\n/// @custom:member hook A contract which will receive this split's tokens and properties, and can define custom\n/// behavior.\nstruct JBSplit {\n bool preferAddToBalance;\n uint32 percent;\n uint56 projectId;\n address payable beneficiary;\n uint48 lockedUntil;\n IJBSplitHook hook;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBSplitGroup.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBSplit} from \"./JBSplit.sol\";\n\n/// @custom:member groupId An identifier for the group. By convention, this ID is `uint256(uint160(tokenAddress))` for\n/// payouts and `1` for reserved tokens.\n/// @custom:member splits The splits in the group.\nstruct JBSplitGroup {\n uint256 groupId;\n JBSplit[] splits;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBSplitHookContext.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBSplit} from \"./JBSplit.sol\";\n\n/// @custom:member token The token being sent to the split hook.\n/// @custom:member amount The amount being sent to the split hook, as a fixed point number.\n/// @custom:member decimals The number of decimals in the amount.\n/// @custom:member projectId The project the split belongs to.\n/// @custom:member groupId The group the split belongs to. By convention, this ID is `uint256(uint160(tokenAddress))`\n/// for payouts and `1` for reserved tokens.\n/// @custom:member split The split which specified the hook.\nstruct JBSplitHookContext {\n address token;\n uint256 amount;\n uint256 decimals;\n uint256 projectId;\n uint256 groupId;\n JBSplit split;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBTerminalConfig.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {JBAccountingContext} from \"./JBAccountingContext.sol\";\nimport {IJBTerminal} from \"./../interfaces/IJBTerminal.sol\";\n\n/// @custom:member terminal The terminal to configure.\n/// @custom:member accountingContextsToAccept The accounting contexts to accept from the terminal.\nstruct JBTerminalConfig {\n IJBTerminal terminal;\n JBAccountingContext[] accountingContextsToAccept;\n}\n" + }, + "node_modules/@bananapus/core/src/structs/JBTokenAmount.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @custom:member token The token the payment was made in.\n/// @custom:member decimals The number of decimals included in the value fixed point number.\n/// @custom:member currency The currency. By convention, this is `uint32(uint160(tokenAddress))` for tokens, or a\n/// constant ID from e.g. `JBCurrencyIds` for other currencies.\n/// @custom:member value The amount of tokens that was paid, as a fixed point number.\nstruct JBTokenAmount {\n address token;\n uint8 decimals;\n uint32 currency;\n uint256 value;\n}\n" + }, + "node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC721/IERC721.sol)\n\npragma solidity ^0.8.20;\n\nimport {IERC165} from \"../../utils/introspection/IERC165.sol\";\n\n/**\n * @dev Required interface of an ERC721 compliant contract.\n */\ninterface IERC721 is IERC165 {\n /**\n * @dev Emitted when `tokenId` token is transferred from `from` to `to`.\n */\n event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);\n\n /**\n * @dev Emitted when `owner` enables `approved` to manage the `tokenId` token.\n */\n event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);\n\n /**\n * @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\n */\n event ApprovalForAll(address indexed owner, address indexed operator, bool approved);\n\n /**\n * @dev Returns the number of tokens in ``owner``'s account.\n */\n function balanceOf(address owner) external view returns (uint256 balance);\n\n /**\n * @dev Returns the owner of the `tokenId` token.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n */\n function ownerOf(uint256 tokenId) external view returns (address owner);\n\n /**\n * @dev Safely transfers `tokenId` token from `from` to `to`.\n *\n * Requirements:\n *\n * - `from` cannot be the zero address.\n * - `to` cannot be the zero address.\n * - `tokenId` token must exist and be owned by `from`.\n * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon\n * a safe transfer.\n *\n * Emits a {Transfer} event.\n */\n function safeTransferFrom(address from, address to, uint256 tokenId, bytes calldata data) external;\n\n /**\n * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients\n * are aware of the ERC721 protocol to prevent tokens from being forever locked.\n *\n * Requirements:\n *\n * - `from` cannot be the zero address.\n * - `to` cannot be the zero address.\n * - `tokenId` token must exist and be owned by `from`.\n * - If the caller is not `from`, it must have been allowed to move this token by either {approve} or\n * {setApprovalForAll}.\n * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon\n * a safe transfer.\n *\n * Emits a {Transfer} event.\n */\n function safeTransferFrom(address from, address to, uint256 tokenId) external;\n\n /**\n * @dev Transfers `tokenId` token from `from` to `to`.\n *\n * WARNING: Note that the caller is responsible to confirm that the recipient is capable of receiving ERC721\n * or else they may be permanently lost. Usage of {safeTransferFrom} prevents loss, though the caller must\n * understand this adds an external call which potentially creates a reentrancy vulnerability.\n *\n * Requirements:\n *\n * - `from` cannot be the zero address.\n * - `to` cannot be the zero address.\n * - `tokenId` token must be owned by `from`.\n * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n *\n * Emits a {Transfer} event.\n */\n function transferFrom(address from, address to, uint256 tokenId) external;\n\n /**\n * @dev Gives permission to `to` to transfer `tokenId` token to another account.\n * The approval is cleared when the token is transferred.\n *\n * Only a single account can be approved at a time, so approving the zero address clears previous approvals.\n *\n * Requirements:\n *\n * - The caller must own the token or be an approved operator.\n * - `tokenId` must exist.\n *\n * Emits an {Approval} event.\n */\n function approve(address to, uint256 tokenId) external;\n\n /**\n * @dev Approve or remove `operator` as an operator for the caller.\n * Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller.\n *\n * Requirements:\n *\n * - The `operator` cannot be the address zero.\n *\n * Emits an {ApprovalForAll} event.\n */\n function setApprovalForAll(address operator, bool approved) external;\n\n /**\n * @dev Returns the account approved for `tokenId` token.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n */\n function getApproved(uint256 tokenId) external view returns (address operator);\n\n /**\n * @dev Returns if the `operator` is allowed to manage all of the assets of `owner`.\n *\n * See {setApprovalForAll}\n */\n function isApprovedForAll(address owner, address operator) external view returns (bool);\n}\n" + }, + "node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC721/IERC721Receiver.sol)\n\npragma solidity ^0.8.20;\n\n/**\n * @title ERC721 token receiver interface\n * @dev Interface for any contract that wants to support safeTransfers\n * from ERC721 asset contracts.\n */\ninterface IERC721Receiver {\n /**\n * @dev Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom}\n * by `operator` from `from`, this function is called.\n *\n * It must return its Solidity selector to confirm the token transfer.\n * If any other value is returned or the interface is not implemented by the recipient, the transfer will be\n * reverted.\n *\n * The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`.\n */\n function onERC721Received(\n address operator,\n address from,\n uint256 tokenId,\n bytes calldata data\n ) external returns (bytes4);\n}\n" + }, + "node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v5.0.0) (utils/introspection/IERC165.sol)\n\npragma solidity ^0.8.20;\n\n/**\n * @dev Interface of the ERC165 standard, as defined in the\n * https://eips.ethereum.org/EIPS/eip-165[EIP].\n *\n * Implementers can declare support of contract interfaces, which can then be\n * queried by others ({ERC165Checker}).\n *\n * For an implementation, see {ERC165}.\n */\ninterface IERC165 {\n /**\n * @dev Returns true if this contract implements the interface defined by\n * `interfaceId`. See the corresponding\n * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\n * to learn more about how these ids are created.\n *\n * This function call must use less than 30 000 gas.\n */\n function supportsInterface(bytes4 interfaceId) external view returns (bool);\n}\n" + }, + "src/CTDeployer.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity 0.8.23;\n\nimport {IJB721TiersHook} from \"@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol\";\nimport {IJB721TiersHookProjectDeployer} from \"@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol\";\nimport {IJB721TokenUriResolver} from \"@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol\";\nimport {JB721InitTiersConfig} from \"@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol\";\nimport {JB721TierConfig} from \"@bananapus/721-hook/src/structs/JB721TierConfig.sol\";\nimport {JB721TiersHookFlags} from \"@bananapus/721-hook/src/structs/JB721TiersHookFlags.sol\";\nimport {JBDeploy721TiersHookConfig} from \"@bananapus/721-hook/src/structs/JBDeploy721TiersHookConfig.sol\";\nimport {JBLaunchProjectConfig} from \"@bananapus/721-hook/src/structs/JBLaunchProjectConfig.sol\";\nimport {JBPayDataHookRulesetConfig} from \"@bananapus/721-hook/src/structs/JBPayDataHookRulesetConfig.sol\";\nimport {IJBController} from \"@bananapus/core/src/interfaces/IJBController.sol\";\nimport {IJBPrices} from \"@bananapus/core/src/interfaces/IJBPrices.sol\";\nimport {JBConstants} from \"@bananapus/core/src/libraries/JBConstants.sol\";\nimport {JBTerminalConfig} from \"@bananapus/core/src/structs/JBTerminalConfig.sol\";\nimport {IERC721Receiver} from \"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\";\n\nimport {ICTDeployer} from \"./interfaces/ICTDeployer.sol\";\nimport {ICTPublisher} from \"./interfaces/ICTPublisher.sol\";\nimport {CTAllowedPost} from \"./structs/CTAllowedPost.sol\";\nimport {CTDeployerAllowedPost} from \"./structs/CTDeployerAllowedPost.sol\";\n\n/// @notice A contract that facilitates deploying a simple Juicebox project to receive posts from Croptop templates.\ncontract CTDeployer is IERC721Receiver, ICTDeployer {\n //*********************************************************************//\n // ---------------- public immutable stored properties --------------- //\n //*********************************************************************//\n\n /// @notice The controller that projects are made from.\n IJBController public immutable override CONTROLLER;\n\n /// @notice The deployer to launch Croptop recorded collections from.\n IJB721TiersHookProjectDeployer public immutable override DEPLOYER;\n\n /// @notice The Croptop publisher.\n ICTPublisher public immutable override PUBLISHER;\n\n //*********************************************************************//\n // -------------------------- constructor ---------------------------- //\n //*********************************************************************//\n\n /// @param controller The controller that projects are made from.\n /// @param deployer The deployer to launch Croptop projects from.\n /// @param publisher The croptop publisher.\n constructor(IJBController controller, IJB721TiersHookProjectDeployer deployer, ICTPublisher publisher) {\n CONTROLLER = controller;\n DEPLOYER = deployer;\n PUBLISHER = publisher;\n }\n\n //*********************************************************************//\n // ------------------------- external views -------------------------- //\n //*********************************************************************//\n\n /// @dev Make sure only mints can be received.\n function onERC721Received(\n address operator,\n address from,\n uint256 tokenId,\n bytes calldata data\n )\n external\n view\n returns (bytes4)\n {\n data;\n tokenId;\n operator;\n\n // Make sure the 721 received is the JBProjects contract.\n if (msg.sender != address(CONTROLLER.PROJECTS())) revert();\n // Make sure the 721 is being received as a mint.\n if (from != address(0)) revert();\n return IERC721Receiver.onERC721Received.selector;\n }\n //*********************************************************************//\n // ---------------------- external transactions ---------------------- //\n //*********************************************************************//\n\n /// @notice Deploy a simple project meant to receive posts from Croptop templates.\n /// @param owner The address that'll own the project.\n /// @param terminalConfigurations The terminals that the network uses to accept payments through.\n /// @param projectUri The metadata URI containing project info.\n /// @param allowedPosts The type of posts that the project should allow.\n /// @param contractUri A link to the collection's metadata.\n /// @param name The name of the collection where posts will go.\n /// @param symbol The symbol of the collection where posts will go.\n /// @return projectId The ID of the newly created project.\n /// @return hook The hook that was created.\n function deployProjectFor(\n address owner,\n JBTerminalConfig[] memory terminalConfigurations,\n string memory projectUri,\n CTDeployerAllowedPost[] memory allowedPosts,\n string memory contractUri,\n string memory name,\n string memory symbol\n )\n external\n returns (uint256 projectId, IJB721TiersHook hook)\n {\n JBPayDataHookRulesetConfig[] memory rulesetConfigurations = new JBPayDataHookRulesetConfig[](1);\n rulesetConfigurations[0].weight = 1_000_000 * (10 ** 18);\n rulesetConfigurations[0].metadata.baseCurrency = uint32(uint160(JBConstants.NATIVE_TOKEN));\n\n // Deploy a blank project.\n (projectId, hook) = DEPLOYER.launchProjectFor({\n owner: address(this),\n deployTiersHookConfig: JBDeploy721TiersHookConfig({\n name: name,\n symbol: symbol,\n baseUri: \"ipfs://\",\n tokenUriResolver: IJB721TokenUriResolver(address(0)),\n contractUri: contractUri,\n tiersConfig: JB721InitTiersConfig({\n tiers: new JB721TierConfig[](0),\n currency: uint32(uint160(JBConstants.NATIVE_TOKEN)),\n decimals: 18,\n prices: IJBPrices(address(0))\n }),\n reserveBeneficiary: address(0),\n flags: JB721TiersHookFlags({\n noNewTiersWithReserves: false,\n noNewTiersWithVotes: false,\n noNewTiersWithOwnerMinting: false,\n preventOverspending: false\n })\n }),\n launchProjectConfig: JBLaunchProjectConfig({\n projectUri: projectUri,\n rulesetConfigurations: rulesetConfigurations,\n terminalConfigurations: terminalConfigurations,\n memo: \"Deployed from Croptop\"\n }),\n controller: CONTROLLER\n });\n\n // Configure allowed posts.\n if (allowedPosts.length > 0) _configurePostingCriteriaFor(address(hook), allowedPosts);\n\n //transfer to _owner.\n CONTROLLER.PROJECTS().transferFrom(address(this), owner, projectId);\n }\n\n //*********************************************************************//\n // --------------------- internal transactions ----------------------- //\n //*********************************************************************//\n\n /// @notice Configure croptop posting.\n /// @param hook The hook that will be posted to.\n /// @param allowedPosts The type of posts that should be allowed.\n function _configurePostingCriteriaFor(address hook, CTDeployerAllowedPost[] memory allowedPosts) internal {\n // Keep a reference to the number of allowed posts.\n uint256 numberOfAllowedPosts = allowedPosts.length;\n\n // Keep a reference to the formatted allowed posts.\n CTAllowedPost[] memory formattedAllowedPosts = new CTAllowedPost[](numberOfAllowedPosts);\n\n // Keep a reference to the post being iterated on.\n CTDeployerAllowedPost memory post;\n\n // Iterate through each post to add it to the formatted list.\n for (uint256 i; i < numberOfAllowedPosts; i++) {\n // Set the post being iterated on.\n post = allowedPosts[i];\n\n // Set the formatted post.\n formattedAllowedPosts[i] = CTAllowedPost({\n hook: hook,\n category: post.category,\n minimumPrice: post.minimumPrice,\n minimumTotalSupply: post.minimumTotalSupply,\n maximumTotalSupply: post.maximumTotalSupply,\n allowedAddresses: post.allowedAddresses\n });\n }\n\n // Set up the allowed posts in the publisher.\n PUBLISHER.configurePostingCriteriaFor({allowedPosts: formattedAllowedPosts});\n }\n}\n" + }, + "src/interfaces/ICTDeployer.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJB721TiersHook} from \"@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol\";\nimport {IJB721TiersHookProjectDeployer} from \"@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol\";\nimport {IJBController} from \"@bananapus/core/src/interfaces/IJBController.sol\";\nimport {JBTerminalConfig} from \"@bananapus/core/src/structs/JBTerminalConfig.sol\";\n\nimport {ICTPublisher} from \"./ICTPublisher.sol\";\nimport {CTDeployerAllowedPost} from \"../structs/CTDeployerAllowedPost.sol\";\n\ninterface ICTDeployer {\n function CONTROLLER() external view returns (IJBController);\n function DEPLOYER() external view returns (IJB721TiersHookProjectDeployer);\n function PUBLISHER() external view returns (ICTPublisher);\n\n function deployProjectFor(\n address owner,\n JBTerminalConfig[] calldata terminalConfigurations,\n string memory projectUri,\n CTDeployerAllowedPost[] calldata allowedPosts,\n string memory contractUri,\n string memory name,\n string memory symbol\n )\n external\n returns (uint256 projectId, IJB721TiersHook hook);\n}\n" + }, + "src/interfaces/ICTPublisher.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport {IJB721TiersHook} from \"@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol\";\nimport {JB721Tier} from \"@bananapus/721-hook/src/structs/JB721Tier.sol\";\nimport {IJBController} from \"@bananapus/core/src/interfaces/IJBController.sol\";\n\nimport {CTAllowedPost} from \"../structs/CTAllowedPost.sol\";\nimport {CTPost} from \"../structs/CTPost.sol\";\n\ninterface ICTPublisher {\n event ConfigurePostingCriteria(address indexed hook, CTAllowedPost allowedPost, address caller);\n event Mint(\n uint256 indexed projectId,\n IJB721TiersHook indexed hook,\n address indexed nftBeneficiary,\n address feeBeneficiary,\n CTPost[] posts,\n uint256 postValue,\n uint256 txValue,\n address caller\n );\n\n function FEE_DIVISOR() external view returns (uint256);\n\n function CONTROLLER() external view returns (IJBController);\n\n function FEE_PROJECT_ID() external view returns (uint256);\n\n function tierIdForEncodedIPFSUriOf(address hook, bytes32 encodedIPFSUri) external view returns (uint256);\n\n function allowanceFor(\n address hook,\n uint256 category\n )\n external\n view\n returns (\n uint256 minimumPrice,\n uint256 minimumTotalSupply,\n uint256 maximumTotalSupply,\n address[] memory allowedAddresses\n );\n\n function tiersFor(\n address hook,\n bytes32[] memory encodedIPFSUris\n )\n external\n view\n returns (JB721Tier[] memory tiers);\n\n function configurePostingCriteriaFor(CTAllowedPost[] memory allowedPosts) external;\n\n function mintFrom(\n IJB721TiersHook hook,\n CTPost[] memory posts,\n address nftBeneficiary,\n address feeBeneficiary,\n bytes calldata additionalPayMetadata,\n bytes calldata feeMetadata\n )\n external\n payable;\n}\n" + }, + "src/structs/CTAllowedPost.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @notice Criteria for allowed posts.\n/// @custom:member hook The hook to which this allowance applies.\n/// @custom:member category A category that should allow posts.\n/// @custom:member minimumPrice The minimum price that a post to the specified category should cost.\n/// @custom:member minimumTotalSupply The minimum total supply of NFTs that can be made available when minting.\n/// @custom:member maxTotalSupply The max total supply of NFTs that can be made available when minting. Leave as 0 for\n/// max.\n/// @custom:member allowedAddresses A list of addresses that are allowed to post on the category through Croptop.\nstruct CTAllowedPost {\n address hook;\n uint24 category;\n uint104 minimumPrice;\n uint32 minimumTotalSupply;\n uint32 maximumTotalSupply;\n address[] allowedAddresses;\n}\n" + }, + "src/structs/CTDeployerAllowedPost.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @notice Criteria for allowed posts.\n/// @custom:member category A category that should allow posts.\n/// @custom:member minimumPrice The minimum price that a post to the specified category should cost.\n/// @custom:member minimumTotalSupply The minimum total supply of NFTs that can be made available when minting.\n/// @custom:member maxTotalSupply The max total supply of NFTs that can be made available when minting. Leave as 0 for\n/// max.\n/// @custom:member allowedAddresses A list of addresses that are allowed to post on the category through Croptop.\nstruct CTDeployerAllowedPost {\n uint24 category;\n uint104 minimumPrice;\n uint32 minimumTotalSupply;\n uint32 maximumTotalSupply;\n address[] allowedAddresses;\n}\n" + }, + "src/structs/CTPost.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n/// @notice A post to be published.\n/// @custom:member encodedIPFSUri The encoded IPFS URI of the post that is being published.\n/// @custom:member totalSupply The number of NFTs that should be made available, including the 1 that will be minted\n/// alongside this transaction.\n/// @custom:member price The price being paid for buying the post that is being published.\n/// @custom:member category The category that the post should be published in.\nstruct CTPost {\n bytes32 encodedIPFSUri;\n uint32 totalSupply;\n uint104 price;\n uint24 category;\n}\n" + } + } + } +} \ No newline at end of file diff --git a/deployments/croptop-core-testnet/arbitrum_sepolia/CTDeployer.json b/deployments/croptop-core-testnet/arbitrum_sepolia/CTDeployer.json index 78fb08d..f2ba74e 100644 --- a/deployments/croptop-core-testnet/arbitrum_sepolia/CTDeployer.json +++ b/deployments/croptop-core-testnet/arbitrum_sepolia/CTDeployer.json @@ -1,8 +1,8 @@ { "_format": "sphinx-sol-ct-artifact-1", - "merkleRoot": "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399", + "merkleRoot": "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", "contractName": "CTDeployer", - "address": "0xa793Fe17F1A09FEaE10fa37C63Ad8003C7eAD42c", + "address": "0x1Fd03a75AaC42E952Bf46C230Dd2dc485b3d422A", "abi": [ { "type": "constructor", @@ -115,13 +115,8 @@ { "name": "allowedPosts", "type": "tuple[]", - "internalType": "struct CTAllowedPost[]", + "internalType": "struct CTDeployerAllowedPost[]", "components": [ - { - "name": "hook", - "type": "address", - "internalType": "address" - }, { "name": "category", "type": "uint24", @@ -170,6 +165,11 @@ "name": "projectId", "type": "uint256", "internalType": "uint256" + }, + { + "name": "hook", + "type": "address", + "internalType": "contract IJB721TiersHook" } ], "stateMutability": "nonpayable" @@ -209,72 +209,85 @@ "stateMutability": "view" } ], - "solcInputHash": "f505eda6318b63c8492f7b48bcb629a8", + "solcInputHash": "c8660e6ab664b4186505e261472223cd", "receipt": { - "blockHash": "0xb0b53ef9b73460e735452f26eceb7a17f8d6f946847c50efbd9abd69dbf8cb11", - "blockNumber": 81590848, + "blockHash": "0x10733223b1e67e9121755925aad2c8a222bc1997802f2c89be63b6e559e3a16f", + "blockNumber": 82270301, "contractAddress": null, - "cumulativeGasUsed": "2163655", + "cumulativeGasUsed": "1783554", "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", "gasPrice": "100000000", - "gasUsed": "1646569", - "hash": "0x65539625a1dcc9fa4c7fe675c280a8aeaca3b79a1f262e3a1cd2d03ef80ee2c2", - "index": 3, + "gasUsed": "1783554", + "hash": "0x978850177b3c467e40fa988e87ab11c1c8c1ef9ec82b8ea9fb4cf0106e7976fc", + "index": 1, "logs": [ { "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", - "blockHash": "0xb0b53ef9b73460e735452f26eceb7a17f8d6f946847c50efbd9abd69dbf8cb11", - "blockNumber": 81590848, + "blockHash": "0x10733223b1e67e9121755925aad2c8a222bc1997802f2c89be63b6e559e3a16f", + "blockNumber": 82270301, "data": "0x0000000000000000000000000000000000000000000000000000000000000000", - "index": 2, + "index": 0, "topics": [ "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", - "0xd41cb765e41ab7042fdb70ce41505f28fb61db82dca1b1337bb97d69ee62825d" + "0xe32e08cb98f13a9f6ef50c35c4833e38f76adf76627622ca74f66c1d7d2cd9a5" ], - "transactionHash": "0x65539625a1dcc9fa4c7fe675c280a8aeaca3b79a1f262e3a1cd2d03ef80ee2c2", - "transactionIndex": 3 + "transactionHash": "0x978850177b3c467e40fa988e87ab11c1c8c1ef9ec82b8ea9fb4cf0106e7976fc", + "transactionIndex": 1 }, { "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0xb0b53ef9b73460e735452f26eceb7a17f8d6f946847c50efbd9abd69dbf8cb11", - "blockNumber": 81590848, + "blockHash": "0x10733223b1e67e9121755925aad2c8a222bc1997802f2c89be63b6e559e3a16f", + "blockNumber": 82270301, "data": "0x", - "index": 3, + "index": 1, "topics": [ "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" ], - "transactionHash": "0x65539625a1dcc9fa4c7fe675c280a8aeaca3b79a1f262e3a1cd2d03ef80ee2c2", - "transactionIndex": 3 + "transactionHash": "0x978850177b3c467e40fa988e87ab11c1c8c1ef9ec82b8ea9fb4cf0106e7976fc", + "transactionIndex": 1 }, { "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0xb0b53ef9b73460e735452f26eceb7a17f8d6f946847c50efbd9abd69dbf8cb11", - "blockNumber": 81590848, - "data": "0x0000000000000000000000000000000000000000000000000000000000000003", - "index": 4, + "blockHash": "0x10733223b1e67e9121755925aad2c8a222bc1997802f2c89be63b6e559e3a16f", + "blockNumber": 82270301, + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", + "index": 2, "topics": [ "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" + ], + "transactionHash": "0x978850177b3c467e40fa988e87ab11c1c8c1ef9ec82b8ea9fb4cf0106e7976fc", + "transactionIndex": 1 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0x10733223b1e67e9121755925aad2c8a222bc1997802f2c89be63b6e559e3a16f", + "blockNumber": 82270301, + "data": "0x", + "index": 3, + "topics": [ + "0x4383d976757d67ca920616be0b6430a681ea9d3dcce8d6d61d4603ca4a9bff63", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" ], - "transactionHash": "0x65539625a1dcc9fa4c7fe675c280a8aeaca3b79a1f262e3a1cd2d03ef80ee2c2", - "transactionIndex": 3 + "transactionHash": "0x978850177b3c467e40fa988e87ab11c1c8c1ef9ec82b8ea9fb4cf0106e7976fc", + "transactionIndex": 1 } ], - "logsBloom": "0x00000000000010000000040000080000000000000000000000000000000000000080000000000000000084000040020000000000000000000000000000000000008000000000200000000000040000000000000000000000000000000000000000000000000000200000000040000000000000000000000000000000000000000000000004000000000100000000000000000000000000000000000000000000004000000000000000000000000000002200000020000000100000000004000000000002000800000000000000001080000000000000000000000000000002000000000000000000000000010000000200000000000080000000000000000000", + "logsBloom": "0x00000000000010000000000000080008000000000000000000000000000000000080000000000000000004000040020000000000000000000000000000000000000000000000200000000000040001000000000000000000000002000000000000000000000000000000000040000000000000000000000000000000000000000000000004000000000100000000000000000000000000000000000000000000004000800000000000000000000000002200000020000000102040000004000000000002000800000000000000001080000000000000000000000000000002000000000000000008000000000000000200000000000080000000000008000000", "status": 1, "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" }, - "metadata": "{\"compiler\":{\"version\":\"0.8.23+commit.f704f362\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"deployer\",\"type\":\"address\"},{\"internalType\":\"contract ICTPublisher\",\"name\":\"publisher\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CONTROLLER\",\"outputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DEPLOYER\",\"outputs\":[{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"PUBLISHER\",\"outputs\":[{\"internalType\":\"contract ICTPublisher\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct CTAllowedPost[]\",\"name\":\"allowedPosts\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"hook\",\"type\":\"address\"},{\"internalType\":\"uint24\",\"name\":\"category\",\"type\":\"uint24\"},{\"internalType\":\"uint104\",\"name\":\"minimumPrice\",\"type\":\"uint104\"},{\"internalType\":\"uint32\",\"name\":\"minimumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maximumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"address[]\",\"name\":\"allowedAddresses\",\"type\":\"address[]\"}]},{\"internalType\":\"string\",\"name\":\"contractUri\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"deployProjectFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}]}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"controller\":\"The controller that projects are made from.\",\"deployer\":\"The deployer to launch Croptop projects from.\",\"publisher\":\"The croptop publisher.\"}},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"params\":{\"allowedPosts\":\"The type of posts that the project should allow.\",\"contractUri\":\"A link to the collection's metadata.\",\"name\":\"The name of the collection where posts will go.\",\"owner\":\"The address that'll own the project.\",\"projectUri\":\"The metadata URI containing project info.\",\"symbol\":\"The symbol of the collection where posts will go.\",\"terminalConfigurations\":\"The terminals that the network uses to accept payments through.\"},\"returns\":{\"projectId\":\"The ID of the newly created project.\"}},\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Make sure only mints can be received.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"CONTROLLER()\":{\"notice\":\"The controller that projects are made from.\"},\"DEPLOYER()\":{\"notice\":\"The deployer to launch Croptop recorded collections from.\"},\"PUBLISHER()\":{\"notice\":\"The Croptop publisher.\"},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"notice\":\"Deploy a simple project meant to receive posts from Croptop templates.\"}},\"version\":1}},\"settings\":{\"remappings\":[\"@arbitrum/=node_modules/@arbitrum/\",\"@bananapus/=node_modules/@bananapus/\",\"@chainlink/=node_modules/@chainlink/\",\"@croptop/core/=/\",\"@eth-optimism/=node_modules/@eth-optimism/\",\"@exhausted-pigeon/=node_modules/@exhausted-pigeon/\",\"@offchainlabs/=node_modules/@offchainlabs/\",\"@openzeppelin/=node_modules/@openzeppelin/\",\"@prb/=node_modules/@prb/\",\"@rev-net/=node_modules/@rev-net/\",\"@scroll-tech/=node_modules/@scroll-tech/\",\"@sphinx-labs/contracts/=node_modules/@sphinx-labs/contracts/contracts/foundry/\",\"@uniswap/=node_modules/@uniswap/\",\"base64-sol/=node_modules/base64-sol/\",\"ds-test/=lib/forge-std/lib/ds-test/src/\",\"forge-std/=lib/forge-std/src/\",\"hardhat/=node_modules/hardhat/\",\"solady/=node_modules/solady/\",\"solmate/=node_modules/solmate/\",\"sphinx/=lib/sphinx/packages/contracts/contracts/forge-std/src/\"],\"optimizer\":{\"enabled\":true,\"runs\":100000000},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"compilationTarget\":{\"src/CTDeployer.sol\":\"CTDeployer\"},\"evmVersion\":\"paris\",\"libraries\":{}},\"sources\":{\"node_modules/@bananapus/721-hook/src/interfaces/IJB721Hook.sol\":{\"keccak256\":\"0xc4c1b2da6354c37e67e4463ca3dc652daf98769a7dc1af5b6e8bc31dc11bdc69\",\"urls\":[\"bzz-raw://583553ab050c7a96dbee7ffe8436a0f345617a816331bba0fb3d1c1e77b39110\",\"dweb:/ipfs/QmXj783jhFVdGzFqpiCgGaNjnmDE2qNGEGE7HidhzGgrSR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol\":{\"keccak256\":\"0x1b17153dcb3901a8d9156976ffb20c1047849ad1ce94c3a1934f7ca012b45bb5\",\"urls\":[\"bzz-raw://e86b10609f4ff4279592a7c185c6b202c0ff2572fad40dcbcfab878dbc735daa\",\"dweb:/ipfs/QmSJE6yTqKuA94BKAixiEFRGUUYhwtngsYDW3VCfrbMzKP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookDeployer.sol\":{\"keccak256\":\"0xdcf34032c2a22a782b7121e777715766cce471e9e8186cb710865de674d646bf\",\"urls\":[\"bzz-raw://00c19707f9fd04b9393a2081a50d69a14ed37d4a8f689c39219da6379aaacb53\",\"dweb:/ipfs/QmPdJYKrEEJxVYYaoV5rVRhoBuxmBTEH7u3J2TZtom1Sof\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol\":{\"keccak256\":\"0x9ec3cdc330019db6a8aeefac543f43054814e5a8a8beed15d51729e94df9ece1\",\"urls\":[\"bzz-raw://20632197d5f24e72999e3af9106fafa3fecbe1bc58c4cebb7cb7cdd73d573959\",\"dweb:/ipfs/QmdpF5NpGzWfCXupszxTjMN616vEGZtsiW35vGmTTxycwX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookStore.sol\":{\"keccak256\":\"0x6f3acee1130717bf1ac5c513cb167a8f121a64c047b505e9aced2b23793b79d7\",\"urls\":[\"bzz-raw://9f4dfe3be9e21c8b5446e9d37e699071f9df257a3c7a2fb8a8791e062617acbc\",\"dweb:/ipfs/QmarDks3DcMyHPVsKdj5qpma5ZBMzH8ti92MY38K76hvSA\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol\":{\"keccak256\":\"0xfa599167098f4459320ec4141a98a17b2dfffbce422baa27d8b4e4530f61ece1\",\"urls\":[\"bzz-raw://8b758b161f4c7b520b2c34b4d91e585e961b8f4ca278eebb91d791f7f2f45140\",\"dweb:/ipfs/QmcD9DF7NJ9QykQpT4KPzm4bs3fkjzukdAUWwdU6Atfw85\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol\":{\"keccak256\":\"0xff362fcd46992e56996e1b162b129a1d03ca2342a482421f279bd930b7af79dd\",\"urls\":[\"bzz-raw://56a52c0d4461fd1b278789cd31ccc77b5eab9a0d7e2fab5074bae9c8a79d0cb1\",\"dweb:/ipfs/QmagorkFXB4rEq5rfLcoZHu6jtjcMicMBPfVqMQT86xZoB\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721Tier.sol\":{\"keccak256\":\"0x99232aa73d5715977332dc7c93b03552a93259e59ae00e86b4ddc200f06adaf1\",\"urls\":[\"bzz-raw://721c0cf10a29fa11677718faafb3a2ecfcb4fbe4e1c09e70a7fac681c80fcc94\",\"dweb:/ipfs/QmSUR77E9PqnpB5kBcKNz2CGBjG9XL9FH57RWVYu3Q7GMR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TierConfig.sol\":{\"keccak256\":\"0x86e54a0de4deab9d105bf276586aebe256188b193e83eb7a6f6f93e4a29ae9c5\",\"urls\":[\"bzz-raw://04bfcc07d452c26dfc50d3a5eb62df4b3b81e063defd752e0aa5ed049a78eef4\",\"dweb:/ipfs/QmWd5nJHUvZPHxJXkrYCboXaqdtiWWkQG26sNM6qkJuAgD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersHookFlags.sol\":{\"keccak256\":\"0x283d8429f31bd58875c056515aa42abd09c95362bd929e85cfc44a0d92585766\",\"urls\":[\"bzz-raw://9a580b89fe99d9f8e930c58a4d0d63a5ff7c01c79d210af01373d066c9e72ed6\",\"dweb:/ipfs/QmdY1eSGSoTjv4KSdsG4Tm5CzJN6iqk3qTRga5ZWNbejRz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersMintReservesConfig.sol\":{\"keccak256\":\"0x86fe586a05e6d4bc6fab9b68996a7f4b74c5362ca6f24b9d8057ed7e4cd1c5ac\",\"urls\":[\"bzz-raw://0915f17d1f958ab1fe6b214d99ed62f1f858684898c803f1a8a6a557472dd140\",\"dweb:/ipfs/QmUhdnSV8UzkgvbtkYEKHrpyDEmc2aJxW5HQ1gucuxxu5A\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersSetDiscountPercentConfig.sol\":{\"keccak256\":\"0x4672eacb6b0cda5e6f5f72ddb91463c52fb90b4df421053e3b40024f19a59954\",\"urls\":[\"bzz-raw://9d8e3a0b35d6b2a6ec66527594263400189b6c766bfd6943c83704380a989aec\",\"dweb:/ipfs/QmUE7NhFWsxjFRzTuRyHJ7oRx3JXD9CnG83t29PjGAhwPR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBDeploy721TiersHookConfig.sol\":{\"keccak256\":\"0x0ce457736946394772afe54d575b68a74269cbf37a250de2d27dca6d9dd45005\",\"urls\":[\"bzz-raw://2010a8f6e19354038d3906ddb174f34464c5f341103313a5c4d628aa7732d5a8\",\"dweb:/ipfs/QmU9m18oWtYNV7UHLcW9kdwE3uzoQuGBe6sASvQTk8GZRL\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchProjectConfig.sol\":{\"keccak256\":\"0x0a8f87072dd6e5dd7c5cd5af7153172275de7e85625aa4a97da4fed65ad5b029\",\"urls\":[\"bzz-raw://b1d230835bf8fa17e8308d5d2ce4c820c4a719f451a65477f75956e100984047\",\"dweb:/ipfs/QmX6BwoYNJx1SssBLcBoPJBsg2Hv6ZP2uErXUvoMrAaQ71\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchRulesetsConfig.sol\":{\"keccak256\":\"0x0088bc7133e3fae1944247370a4eec227aeae8b371534e1d54439499644c0ede\",\"urls\":[\"bzz-raw://31847d92e9eb5e3125f07c23a651c0972e1784f748c4ce9d0c66853ee892c690\",\"dweb:/ipfs/QmRmoXg2MrkUFkMkgKvU7igkHQjhStbbc6CeiHkLCYAn7P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetConfig.sol\":{\"keccak256\":\"0x06fdbc5c40750b8d81e4c079f86a96f5ce922a0ddbb81ddc5a044aa166723f59\",\"urls\":[\"bzz-raw://b810a5768501951e08c46f1907a7f561a49c4e16f339f1679a493fcddd30cc50\",\"dweb:/ipfs/QmfCF85EAdQCnsixXCdkKb5Xz2bL9dqAoDhmiR1QoBo81P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetMetadata.sol\":{\"keccak256\":\"0x087280b3a959933c68ad19acbf07d80f9bbf632d902986c2ff624b6c31a6eeeb\",\"urls\":[\"bzz-raw://a2ddf9483f89b8a9012bc7714db4547b68a0df5fe3bf953e190d2021377f9811\",\"dweb:/ipfs/QmZcs1fuufGwWYy4fW3puX7ZRrribMMzEyEEL7WVCnrMer\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBQueueRulesetsConfig.sol\":{\"keccak256\":\"0x3ad05bfa31a90070eb4a026a13d508f9a68ca2474c3737bcda97a07307ffa554\",\"urls\":[\"bzz-raw://357f0193da0840e4b012ff1f97c65c8b6f5fea39e323a3777baf2b0625491f12\",\"dweb:/ipfs/QmZkJb8MuZ3wimiV6kry4RMp9ZkUFQA9yhfJDVUWTBWFcq\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/enums/JBApprovalStatus.sol\":{\"keccak256\":\"0x61c69b6bac7d24b566d87cda23a77e4ca9cdb87200b106aba8534cb9a0973e33\",\"urls\":[\"bzz-raw://6a9ca7249de76f77a8252eefe6bd1b63d47952f25a2acfa2c8db967cdff4470c\",\"dweb:/ipfs/QmaxSxptRQNj8bNy96EreENmrnRWdKmhyihBcxyWzBX5BN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBController.sol\":{\"keccak256\":\"0xf577428966a4db4ca17fb73abf2ff2e21cc0e231df2d7247bf410f926d6cb5f7\",\"urls\":[\"bzz-raw://7c1d847382f731b8c464b55ead0ed5c517aa3fa606aaf78b7881aab18108d504\",\"dweb:/ipfs/QmXW3DpPgjYw33A8bMxJFRVZRYjCnWTp28M8sSdPHbDq7E\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectory.sol\":{\"keccak256\":\"0xcb97db460d2948a7f51c660fe0d1b1749047a419027711c476b86ad3573534c5\",\"urls\":[\"bzz-raw://a909c7a3d471054537894dca827e6e018e92ac25299b43026e5b1e335ec4de68\",\"dweb:/ipfs/QmU1GT3F8PNMjSiPPP5cSLLofefHYFJXnywMCdqqM9xUeh\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectoryAccessControl.sol\":{\"keccak256\":\"0x1ea768919979d9f625920c05a5e633739febc822ce14b1e4724d739b19c10fb8\",\"urls\":[\"bzz-raw://7c5391a510bd610a97978245b7306d8d21c79d7c45c15f590ba9b603ea751154\",\"dweb:/ipfs/QmPSJvVWswqzv3bVq422UhA2BybMsiHoYFWGPp5Jh6Xs6a\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBFundAccessLimits.sol\":{\"keccak256\":\"0xfd8ea4cffd289e7fef6e53b5c8983eb6b941de306517f40c047048d3a8a2ca08\",\"urls\":[\"bzz-raw://2765cdee206f8b1b53874448e2481db001cd3706753190cfc9381318c7a7c41c\",\"dweb:/ipfs/QmQ5UYSadtzrb7BcTR93KnAYKXawdyDUG5HjjASV1zbys5\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPayHook.sol\":{\"keccak256\":\"0x9438866782c652c2942f4d114e35f393cd3c8b0334abce8387eed90bca35e8b2\",\"urls\":[\"bzz-raw://cfd99daf57213f92325aad7d7d16e98476d38e870470e95ba01e3ae3cdecc95d\",\"dweb:/ipfs/QmUKKAVGf7ki8BHksr99tFcRW8APveeB5tNH63ctTbbCW8\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPriceFeed.sol\":{\"keccak256\":\"0x4bd84c0f1a5d4729ed709bcddd43f4c50ec4a165ece79780af8dce482ed07d4a\",\"urls\":[\"bzz-raw://62bac4bfb6982fb002f620c77e5c445e62d50241a5aa64a07e51d929f5a42180\",\"dweb:/ipfs/QmWgJUDreVY2BuMX38a1iUUR5kNbMwGnKG3VvurB7oZtuM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPrices.sol\":{\"keccak256\":\"0xb4d5244daa52aafab0c9b8806b7f973afa6a3b298add5966d586d27b78424cfb\",\"urls\":[\"bzz-raw://a819f74455aaa4f679ded378424702f3992608a640d7f943b19938eb4ff711da\",\"dweb:/ipfs/QmSMGvVTsMW3L5YSUyXTKoEsgNpGEutnq4frEZHuDdeDvz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjectUriRegistry.sol\":{\"keccak256\":\"0xc9ab647179d7d0c857fdd881d6ce96f06254739440ed08e85a1c2042218f7c7d\",\"urls\":[\"bzz-raw://8529368f30c98c8d5a69acdbe4ac79e3eeb4afa5a9cd278325c5f2184ef3d50f\",\"dweb:/ipfs/QmfUaozYiAGt1UwBDUEZvon1tEBS5sLPzqpN9dNdjQotPN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjects.sol\":{\"keccak256\":\"0x4ae42a9cc29b517b26d2b9b635deb82c16696b777deeca92dfcad33b0f81c0a0\",\"urls\":[\"bzz-raw://1dcbd860e7d7f05232d90c5e9cfd3d01e2ce986ffcdb053473d8a4d387b1a48a\",\"dweb:/ipfs/QmWKWoSJJbVWDumbnzXJBJyXmAacgC97bxMtchh8te41bn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesetApprovalHook.sol\":{\"keccak256\":\"0x592e95d159494421c6b1bcb362d0cee1df0132921697351304e9cd7af4fbd386\",\"urls\":[\"bzz-raw://5bebfd5fa67c1b6ea16fa2e76e9520e9dfe52a579f48dd94d0c2ec45f78ad178\",\"dweb:/ipfs/QmRUawEGtfYoYSHmHELGhvJoWuMsxLPKtqAXgsrb7fJboP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesets.sol\":{\"keccak256\":\"0x29b56a91e8cd4d3e718e18cd934eccbc22c668d08dc26adb43c958722497d3ab\",\"urls\":[\"bzz-raw://7ae1a723eaf16809b9bd73cd235985801aff85283976be342416fa301c3b4793\",\"dweb:/ipfs/QmZYSY7C9dPvR5EnT8YCjVSy842dBVP3wZdYQ71wyPkx2F\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplitHook.sol\":{\"keccak256\":\"0xeb8dfac7a4b81897a1c3b5d0d853a406bcff33720fb187d5ca5bb3dcc0ba3a12\",\"urls\":[\"bzz-raw://36aaeef6107cfe5b0127e063ea215aac7200f8af02e28a48e61111abd3254688\",\"dweb:/ipfs/QmQ8yQANXnhQCAWBGKsKCDsJ3A8hnTKNg5tyo79GfWXTcV\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplits.sol\":{\"keccak256\":\"0x424e6d1189b9ba7a5d441e7675ae09ff893c13c62b9ddde4dd6bc2690e96c6f3\",\"urls\":[\"bzz-raw://7e30ed7ab1daf20ff324aacfef7150a243b5db496eceaf032c7012ccb3c4227d\",\"dweb:/ipfs/QmRj5EZKmDjJy8tpvKbpz8vPSKHR5C9Q5ENe7oSLij4H8M\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTerminal.sol\":{\"keccak256\":\"0xe440530f1d0cc16578981e1d2e4e13674360c677d19a74a4b08f9f7268c70aee\",\"urls\":[\"bzz-raw://ddea4aeaf523f48a1364a02d2ccb75f3dfd8a2b9af465964e9adf3ce53f4196a\",\"dweb:/ipfs/QmVWhN1Nn9khUN8ctAgh2Ypo2vnFBgDHtDw6S232A6RkFw\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBToken.sol\":{\"keccak256\":\"0xd33757cd3da65a9d66404b7e6ddb7a27b4902885a3498b9db1673c218e9fab2d\",\"urls\":[\"bzz-raw://de28759920dab1db6cfcb4ff2ffae76491be371b791a2a0ec054ff17653872dc\",\"dweb:/ipfs/QmPXnhdxbgoV4dBRJCi9siQYRfrvcJLDtY1rp3H2vtU1Cz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokenUriResolver.sol\":{\"keccak256\":\"0xfa5cb00dcd6085d1ef912d071fe73c63f9478a2cd0f9d8bddaf659b6af2d0967\",\"urls\":[\"bzz-raw://282e4e7c342d65f77cde0e9a08fcaf20ef5cf379c7a48b639842c0ffd0b2afb8\",\"dweb:/ipfs/QmbnN3PEQeZaXdPLT75V1J79kMg7KqSMru37RHrL3z8Yf2\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokens.sol\":{\"keccak256\":\"0x1348b416ebf501409acc9970d46be89ffd076566001ceff9b96fce1b0b2c405d\",\"urls\":[\"bzz-raw://74327019f5174345afed10d9a60caa9ef908382e131882c27588b13be8364b36\",\"dweb:/ipfs/QmZAqB6hFSymTEbjqHWgE4t9NRose9AJh4etGyWnvDkhJt\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/libraries/JBConstants.sol\":{\"keccak256\":\"0x822bef715c9d5803208a2e02f8d14e0ffdb1fb2ea84698c30fd801103be4a3d2\",\"urls\":[\"bzz-raw://476c87d74e31cd43419cce01551158993c311ac47ba5fad5768e26054b3c8a91\",\"dweb:/ipfs/QmdpxoGU6suZAm9FS7R47AwSmHEFjwmf6v56WrfZM4QkJc\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAccountingContext.sol\":{\"keccak256\":\"0x9c47e048a719f784f601df69a583505432217b9868a0244876d277f84dd1ebdf\",\"urls\":[\"bzz-raw://8565f194b87914da9a02af2e760ae2ed2a9d185c6f11229f7035140776d2fec9\",\"dweb:/ipfs/QmPs2fic8W3F5e5zNRwmGmJFjb3JWGPWJ3YUe5o82nQgEn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAfterPayRecordedContext.sol\":{\"keccak256\":\"0xd26c3a774ff38be79064085970454fe2603a23a638c76270d5b1b3829206c3e8\",\"urls\":[\"bzz-raw://3b55dbe3bf1ef625b7ca04efab3de35406e6041d5b3d82c7265469c500e2b702\",\"dweb:/ipfs/QmUdBDo4Lt3mcsFcsXT2mqq3czFwZjQJFPLM89YA2VtD7k\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBCurrencyAmount.sol\":{\"keccak256\":\"0x7f321bbcbd13abfbc8f0d08a5adaaf8ef312db5bb899012fcffb6170fbb962a9\",\"urls\":[\"bzz-raw://bf9301ef1dbb3abda7b492585377617508ba048c6170f21a5e7d2b3c034eb384\",\"dweb:/ipfs/QmcetEFxSYLLNSZzPBpNn3Fc8sFcrFE8A8h12ZSj2tLgxD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBFundAccessLimitGroup.sol\":{\"keccak256\":\"0x9fdaa8d017b72da25f583700a444a86849df053f7fb8eac874ec5139bcf651e5\",\"urls\":[\"bzz-raw://c8e44c49ee444a98424a0dbeb6897a76a0bf00d88a613f62ac2012afdac754ee\",\"dweb:/ipfs/QmdYkAiRi5bXM1YYNkc7BiqimHSFodMGn1cjHR5hcpm4xH\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRuleset.sol\":{\"keccak256\":\"0x03ad7bd257d4ac55ecc42b85156dce1c70eec8572dbf8feb093c033912f305e7\",\"urls\":[\"bzz-raw://9665b4c018cd469f94bec4471222cc9e5fd58ac421a0959f70e72618fe37d55b\",\"dweb:/ipfs/QmSUf6HQv2Ckcoy5tSH1UPdD8vDMerfK29G8kaxmxB3Kow\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetConfig.sol\":{\"keccak256\":\"0x7a57ed3d73bd9457d8e1fb40f5204c364df87cbfdbf42412d5bbc08beabb49c9\",\"urls\":[\"bzz-raw://8b9a83916ee67d32b5f434b35b171c6122bbc4efeaa4fabb8dec2ca4e9e32c6e\",\"dweb:/ipfs/QmNquzUQn6ZvE2wBcMCgru3resV9UNvBWPPetyDChoh8vM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetMetadata.sol\":{\"keccak256\":\"0x7f49fe89eefe848e6af12aa452bd882430ff35e9dd44e9ff3d7be6911496486c\",\"urls\":[\"bzz-raw://136f3baeb71f8ac1c2721eb94b1d469d35cf3fba82f9138760dde6d451d052ef\",\"dweb:/ipfs/QmVeBaYMS9K3rPfneKiVYnFXbp3X8qxrw4qhN4PmuYHppz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetWithMetadata.sol\":{\"keccak256\":\"0x1bcfadf20488f6df65227f8d4d0fbf9b7539456a2389567f7fe3900d23289bc3\",\"urls\":[\"bzz-raw://0a15c399a71e5373f8c0484c6d6b83521eda31e063a2c53e4c5cec4e74550343\",\"dweb:/ipfs/QmQwi8zkjoTVXbK89NeETYimWCacTrNsesJdpLSvGdqMPX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplit.sol\":{\"keccak256\":\"0x0e1351e80cf9967caee90094712a4fc884a83f07df23a844d8cb33ebcd00721e\",\"urls\":[\"bzz-raw://19d5793c08834f2ec1d6942bd43d05042b0ecc351a57235d748a8f2ff74b6638\",\"dweb:/ipfs/QmUWjyNg7x62KsvMwAzNdpmwqCo5qK5ip9pLdshj9B2Kbf\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitGroup.sol\":{\"keccak256\":\"0x8dc98fa9e730bee8bcc0a8acf1bc4db1c9b0edf307d969c9c9caa4d6b8d856d9\",\"urls\":[\"bzz-raw://66f4306e0e69c82033927952564fd617e7c4b29aa8b165d5b53a0ebe3109ea12\",\"dweb:/ipfs/QmQqN1u7FHAdEtEZNRcKvZwYtXEQVQnLd6FMzHESP7wDtx\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitHookContext.sol\":{\"keccak256\":\"0x1cef82bf434f91d518092ea7e57db4a72ce7654f48a7db9bf44882900b6b6623\",\"urls\":[\"bzz-raw://cc5012008ab7e74cf766fe1c202a23e3a73365356bcf1e0b04ec01baf21b204b\",\"dweb:/ipfs/QmSwJvd6Yrg9XZMhjquBcak5sfUswbR5nPEuJBfpjM54VT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTerminalConfig.sol\":{\"keccak256\":\"0x9e31505080d3754b6d7db96095b0545930ef6dbc035b91fcc32fdc76a0e7c2a5\",\"urls\":[\"bzz-raw://f7702ab33a1b713c37e5397a55d8ef089289f4da8034cfe9622cbc69a98c47de\",\"dweb:/ipfs/QmXyiXps4aJyiM7vtDC373QUoqwB4DMETaZzC5cZPJKaAK\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTokenAmount.sol\":{\"keccak256\":\"0xc61593d33d5ec30e695d382948a1b944d01e29a8f2bfd29f75ecebcdbc7816de\",\"urls\":[\"bzz-raw://8992c1e5fca0c2342ecc0e734dfba6a2a752e4c29184784931d0971e44305051\",\"dweb:/ipfs/QmYNcaW3qeCkgAExUaFTq238fgfJuoYCTwjCn7jm94U4dJ\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5ef46daa3b58ef2702279d514780316efaa952915ee1aa3396f041ee2982b0b4\",\"urls\":[\"bzz-raw://2f8f2a76e23b02fc69e8cd24c3cb47da6c7af3a2d6c3a382f8ac25c6e094ade7\",\"dweb:/ipfs/QmPV4ZS4tPVv4mTCf9ejyZ1ai57EEibDRj7mN2ARDCLV5n\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0x7f7a26306c79a65fb8b3b6c757cd74660c532cd8a02e165488e30027dd34ca49\",\"urls\":[\"bzz-raw://d01e0b2b837ee2f628545e54d8715b49c7ef2befd08356c2e7f6c50dde8a1c22\",\"dweb:/ipfs/QmWBAn6y2D1xgftci97Z3qR9tQnkvwQpYwFwkTvDMvqU4i\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"],\"license\":\"MIT\"},\"src/CTDeployer.sol\":{\"keccak256\":\"0x5bcf3bbdacbcade3a43678d92238c65bbdb84ddf5945311b2155f63052bbff46\",\"urls\":[\"bzz-raw://dbc4e2e3e75d52e42f980924abab04c4f160d542d1f12c59dce13435b7b2718e\",\"dweb:/ipfs/Qmb4jyz2Y76kVZShJVsUzyrT8dPp8Yo7xiRADByB5GA77o\"],\"license\":\"MIT\"},\"src/interfaces/ICTDeployer.sol\":{\"keccak256\":\"0x23c4ec623f382c88a7061e11b7e4a32f604aee92788256a77705532c9bc62d82\",\"urls\":[\"bzz-raw://8bf22d2fefd98e2d28191860315d45badd0d13df446de32e3b660001c2862c21\",\"dweb:/ipfs/QmcxVwo45WobQ3JwAhpjmvkDcivyqVnw7kFoaimDY51tj4\"],\"license\":\"MIT\"},\"src/interfaces/ICTPublisher.sol\":{\"keccak256\":\"0x8fab84f363d0a7e7707eb93979b43f5e129b7d9d8221d6d240107fdf3d46da5c\",\"urls\":[\"bzz-raw://016775346d46cb4358eb2c0e29bb6ccc543b5f37cef916e98bc7a079cbd9e894\",\"dweb:/ipfs/Qmdeu2FWQNsd9vC7wZFpryESU6M6kq99EwbBUkg4HoogQ7\"],\"license\":\"MIT\"},\"src/structs/CTAllowedPost.sol\":{\"keccak256\":\"0x1cab9579ed19fea4d490b1de827fd123a8cc7ababd73ed5421351a6f7142a371\",\"urls\":[\"bzz-raw://00695b12ade810d017427a7cf20856dc326bbedcf4548ed28e81a33f09b28ad8\",\"dweb:/ipfs/QmP3UPM4xyiSUnBhkThyVp1Ww8QfqfN7rk3fPx4Gu5Whsm\"],\"license\":\"MIT\"},\"src/structs/CTPost.sol\":{\"keccak256\":\"0xc4d67fc9a0323a2a923521f2fb3042bde046cb8c78fc69d928804ab8f3987038\",\"urls\":[\"bzz-raw://fb4d0a02ada8e751cbd7061f8d7b48705a9442339510232f51595ada0e73612d\",\"dweb:/ipfs/QmbFd4CeMhcY86Ze4izYYdK2xB7tQuwdHxdP7aB5zxy8ka\"],\"license\":\"MIT\"}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.8.23+commit.f704f362\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"deployer\",\"type\":\"address\"},{\"internalType\":\"contract ICTPublisher\",\"name\":\"publisher\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CONTROLLER\",\"outputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DEPLOYER\",\"outputs\":[{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"PUBLISHER\",\"outputs\":[{\"internalType\":\"contract ICTPublisher\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct CTDeployerAllowedPost[]\",\"name\":\"allowedPosts\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint24\",\"name\":\"category\",\"type\":\"uint24\"},{\"internalType\":\"uint104\",\"name\":\"minimumPrice\",\"type\":\"uint104\"},{\"internalType\":\"uint32\",\"name\":\"minimumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maximumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"address[]\",\"name\":\"allowedAddresses\",\"type\":\"address[]\"}]},{\"internalType\":\"string\",\"name\":\"contractUri\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"deployProjectFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"contract IJB721TiersHook\",\"name\":\"hook\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}]}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"controller\":\"The controller that projects are made from.\",\"deployer\":\"The deployer to launch Croptop projects from.\",\"publisher\":\"The croptop publisher.\"}},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"params\":{\"allowedPosts\":\"The type of posts that the project should allow.\",\"contractUri\":\"A link to the collection's metadata.\",\"name\":\"The name of the collection where posts will go.\",\"owner\":\"The address that'll own the project.\",\"projectUri\":\"The metadata URI containing project info.\",\"symbol\":\"The symbol of the collection where posts will go.\",\"terminalConfigurations\":\"The terminals that the network uses to accept payments through.\"},\"returns\":{\"hook\":\"The hook that was created.\",\"projectId\":\"The ID of the newly created project.\"}},\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Make sure only mints can be received.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"CONTROLLER()\":{\"notice\":\"The controller that projects are made from.\"},\"DEPLOYER()\":{\"notice\":\"The deployer to launch Croptop recorded collections from.\"},\"PUBLISHER()\":{\"notice\":\"The Croptop publisher.\"},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"notice\":\"Deploy a simple project meant to receive posts from Croptop templates.\"}},\"version\":1}},\"settings\":{\"remappings\":[\"@arbitrum/=node_modules/@arbitrum/\",\"@bananapus/=node_modules/@bananapus/\",\"@chainlink/=node_modules/@chainlink/\",\"@croptop/core/=/\",\"@eth-optimism/=node_modules/@eth-optimism/\",\"@exhausted-pigeon/=node_modules/@exhausted-pigeon/\",\"@offchainlabs/=node_modules/@offchainlabs/\",\"@openzeppelin/=node_modules/@openzeppelin/\",\"@prb/=node_modules/@prb/\",\"@rev-net/=node_modules/@rev-net/\",\"@scroll-tech/=node_modules/@scroll-tech/\",\"@sphinx-labs/contracts/=node_modules/@sphinx-labs/contracts/contracts/foundry/\",\"@uniswap/=node_modules/@uniswap/\",\"base64-sol/=node_modules/base64-sol/\",\"ds-test/=lib/forge-std/lib/ds-test/src/\",\"forge-std/=lib/forge-std/src/\",\"hardhat/=node_modules/hardhat/\",\"solady/=node_modules/solady/\",\"solmate/=node_modules/solmate/\",\"sphinx/=lib/sphinx/packages/contracts/contracts/forge-std/src/\"],\"optimizer\":{\"enabled\":true,\"runs\":100000000},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"compilationTarget\":{\"src/CTDeployer.sol\":\"CTDeployer\"},\"evmVersion\":\"paris\",\"libraries\":{}},\"sources\":{\"node_modules/@bananapus/721-hook/src/interfaces/IJB721Hook.sol\":{\"keccak256\":\"0xc4c1b2da6354c37e67e4463ca3dc652daf98769a7dc1af5b6e8bc31dc11bdc69\",\"urls\":[\"bzz-raw://583553ab050c7a96dbee7ffe8436a0f345617a816331bba0fb3d1c1e77b39110\",\"dweb:/ipfs/QmXj783jhFVdGzFqpiCgGaNjnmDE2qNGEGE7HidhzGgrSR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol\":{\"keccak256\":\"0x1b17153dcb3901a8d9156976ffb20c1047849ad1ce94c3a1934f7ca012b45bb5\",\"urls\":[\"bzz-raw://e86b10609f4ff4279592a7c185c6b202c0ff2572fad40dcbcfab878dbc735daa\",\"dweb:/ipfs/QmSJE6yTqKuA94BKAixiEFRGUUYhwtngsYDW3VCfrbMzKP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookDeployer.sol\":{\"keccak256\":\"0xdcf34032c2a22a782b7121e777715766cce471e9e8186cb710865de674d646bf\",\"urls\":[\"bzz-raw://00c19707f9fd04b9393a2081a50d69a14ed37d4a8f689c39219da6379aaacb53\",\"dweb:/ipfs/QmPdJYKrEEJxVYYaoV5rVRhoBuxmBTEH7u3J2TZtom1Sof\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol\":{\"keccak256\":\"0xffcee695bbdf4960b99b905b966ba6225a1909e65397c1f32389e77ec49207d0\",\"urls\":[\"bzz-raw://7aadbb2a046524b164e0886b9deb049823e5b1c92efcf2ad7fd8e22d5a746d51\",\"dweb:/ipfs/QmbhafFJmJ6MUtrSzHqLnshz1PNUz3rgcvB8zif1p8sf7d\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookStore.sol\":{\"keccak256\":\"0x6f3acee1130717bf1ac5c513cb167a8f121a64c047b505e9aced2b23793b79d7\",\"urls\":[\"bzz-raw://9f4dfe3be9e21c8b5446e9d37e699071f9df257a3c7a2fb8a8791e062617acbc\",\"dweb:/ipfs/QmarDks3DcMyHPVsKdj5qpma5ZBMzH8ti92MY38K76hvSA\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol\":{\"keccak256\":\"0xfa599167098f4459320ec4141a98a17b2dfffbce422baa27d8b4e4530f61ece1\",\"urls\":[\"bzz-raw://8b758b161f4c7b520b2c34b4d91e585e961b8f4ca278eebb91d791f7f2f45140\",\"dweb:/ipfs/QmcD9DF7NJ9QykQpT4KPzm4bs3fkjzukdAUWwdU6Atfw85\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol\":{\"keccak256\":\"0xff362fcd46992e56996e1b162b129a1d03ca2342a482421f279bd930b7af79dd\",\"urls\":[\"bzz-raw://56a52c0d4461fd1b278789cd31ccc77b5eab9a0d7e2fab5074bae9c8a79d0cb1\",\"dweb:/ipfs/QmagorkFXB4rEq5rfLcoZHu6jtjcMicMBPfVqMQT86xZoB\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721Tier.sol\":{\"keccak256\":\"0x99232aa73d5715977332dc7c93b03552a93259e59ae00e86b4ddc200f06adaf1\",\"urls\":[\"bzz-raw://721c0cf10a29fa11677718faafb3a2ecfcb4fbe4e1c09e70a7fac681c80fcc94\",\"dweb:/ipfs/QmSUR77E9PqnpB5kBcKNz2CGBjG9XL9FH57RWVYu3Q7GMR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TierConfig.sol\":{\"keccak256\":\"0x86e54a0de4deab9d105bf276586aebe256188b193e83eb7a6f6f93e4a29ae9c5\",\"urls\":[\"bzz-raw://04bfcc07d452c26dfc50d3a5eb62df4b3b81e063defd752e0aa5ed049a78eef4\",\"dweb:/ipfs/QmWd5nJHUvZPHxJXkrYCboXaqdtiWWkQG26sNM6qkJuAgD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersHookFlags.sol\":{\"keccak256\":\"0x283d8429f31bd58875c056515aa42abd09c95362bd929e85cfc44a0d92585766\",\"urls\":[\"bzz-raw://9a580b89fe99d9f8e930c58a4d0d63a5ff7c01c79d210af01373d066c9e72ed6\",\"dweb:/ipfs/QmdY1eSGSoTjv4KSdsG4Tm5CzJN6iqk3qTRga5ZWNbejRz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersMintReservesConfig.sol\":{\"keccak256\":\"0x86fe586a05e6d4bc6fab9b68996a7f4b74c5362ca6f24b9d8057ed7e4cd1c5ac\",\"urls\":[\"bzz-raw://0915f17d1f958ab1fe6b214d99ed62f1f858684898c803f1a8a6a557472dd140\",\"dweb:/ipfs/QmUhdnSV8UzkgvbtkYEKHrpyDEmc2aJxW5HQ1gucuxxu5A\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersSetDiscountPercentConfig.sol\":{\"keccak256\":\"0x4672eacb6b0cda5e6f5f72ddb91463c52fb90b4df421053e3b40024f19a59954\",\"urls\":[\"bzz-raw://9d8e3a0b35d6b2a6ec66527594263400189b6c766bfd6943c83704380a989aec\",\"dweb:/ipfs/QmUE7NhFWsxjFRzTuRyHJ7oRx3JXD9CnG83t29PjGAhwPR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBDeploy721TiersHookConfig.sol\":{\"keccak256\":\"0x0ce457736946394772afe54d575b68a74269cbf37a250de2d27dca6d9dd45005\",\"urls\":[\"bzz-raw://2010a8f6e19354038d3906ddb174f34464c5f341103313a5c4d628aa7732d5a8\",\"dweb:/ipfs/QmU9m18oWtYNV7UHLcW9kdwE3uzoQuGBe6sASvQTk8GZRL\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchProjectConfig.sol\":{\"keccak256\":\"0x0a8f87072dd6e5dd7c5cd5af7153172275de7e85625aa4a97da4fed65ad5b029\",\"urls\":[\"bzz-raw://b1d230835bf8fa17e8308d5d2ce4c820c4a719f451a65477f75956e100984047\",\"dweb:/ipfs/QmX6BwoYNJx1SssBLcBoPJBsg2Hv6ZP2uErXUvoMrAaQ71\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchRulesetsConfig.sol\":{\"keccak256\":\"0x0088bc7133e3fae1944247370a4eec227aeae8b371534e1d54439499644c0ede\",\"urls\":[\"bzz-raw://31847d92e9eb5e3125f07c23a651c0972e1784f748c4ce9d0c66853ee892c690\",\"dweb:/ipfs/QmRmoXg2MrkUFkMkgKvU7igkHQjhStbbc6CeiHkLCYAn7P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetConfig.sol\":{\"keccak256\":\"0x06fdbc5c40750b8d81e4c079f86a96f5ce922a0ddbb81ddc5a044aa166723f59\",\"urls\":[\"bzz-raw://b810a5768501951e08c46f1907a7f561a49c4e16f339f1679a493fcddd30cc50\",\"dweb:/ipfs/QmfCF85EAdQCnsixXCdkKb5Xz2bL9dqAoDhmiR1QoBo81P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetMetadata.sol\":{\"keccak256\":\"0x087280b3a959933c68ad19acbf07d80f9bbf632d902986c2ff624b6c31a6eeeb\",\"urls\":[\"bzz-raw://a2ddf9483f89b8a9012bc7714db4547b68a0df5fe3bf953e190d2021377f9811\",\"dweb:/ipfs/QmZcs1fuufGwWYy4fW3puX7ZRrribMMzEyEEL7WVCnrMer\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBQueueRulesetsConfig.sol\":{\"keccak256\":\"0x3ad05bfa31a90070eb4a026a13d508f9a68ca2474c3737bcda97a07307ffa554\",\"urls\":[\"bzz-raw://357f0193da0840e4b012ff1f97c65c8b6f5fea39e323a3777baf2b0625491f12\",\"dweb:/ipfs/QmZkJb8MuZ3wimiV6kry4RMp9ZkUFQA9yhfJDVUWTBWFcq\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/enums/JBApprovalStatus.sol\":{\"keccak256\":\"0x61c69b6bac7d24b566d87cda23a77e4ca9cdb87200b106aba8534cb9a0973e33\",\"urls\":[\"bzz-raw://6a9ca7249de76f77a8252eefe6bd1b63d47952f25a2acfa2c8db967cdff4470c\",\"dweb:/ipfs/QmaxSxptRQNj8bNy96EreENmrnRWdKmhyihBcxyWzBX5BN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBController.sol\":{\"keccak256\":\"0xf577428966a4db4ca17fb73abf2ff2e21cc0e231df2d7247bf410f926d6cb5f7\",\"urls\":[\"bzz-raw://7c1d847382f731b8c464b55ead0ed5c517aa3fa606aaf78b7881aab18108d504\",\"dweb:/ipfs/QmXW3DpPgjYw33A8bMxJFRVZRYjCnWTp28M8sSdPHbDq7E\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectory.sol\":{\"keccak256\":\"0xcb97db460d2948a7f51c660fe0d1b1749047a419027711c476b86ad3573534c5\",\"urls\":[\"bzz-raw://a909c7a3d471054537894dca827e6e018e92ac25299b43026e5b1e335ec4de68\",\"dweb:/ipfs/QmU1GT3F8PNMjSiPPP5cSLLofefHYFJXnywMCdqqM9xUeh\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectoryAccessControl.sol\":{\"keccak256\":\"0x1ea768919979d9f625920c05a5e633739febc822ce14b1e4724d739b19c10fb8\",\"urls\":[\"bzz-raw://7c5391a510bd610a97978245b7306d8d21c79d7c45c15f590ba9b603ea751154\",\"dweb:/ipfs/QmPSJvVWswqzv3bVq422UhA2BybMsiHoYFWGPp5Jh6Xs6a\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBFundAccessLimits.sol\":{\"keccak256\":\"0xfd8ea4cffd289e7fef6e53b5c8983eb6b941de306517f40c047048d3a8a2ca08\",\"urls\":[\"bzz-raw://2765cdee206f8b1b53874448e2481db001cd3706753190cfc9381318c7a7c41c\",\"dweb:/ipfs/QmQ5UYSadtzrb7BcTR93KnAYKXawdyDUG5HjjASV1zbys5\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPayHook.sol\":{\"keccak256\":\"0x9438866782c652c2942f4d114e35f393cd3c8b0334abce8387eed90bca35e8b2\",\"urls\":[\"bzz-raw://cfd99daf57213f92325aad7d7d16e98476d38e870470e95ba01e3ae3cdecc95d\",\"dweb:/ipfs/QmUKKAVGf7ki8BHksr99tFcRW8APveeB5tNH63ctTbbCW8\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPriceFeed.sol\":{\"keccak256\":\"0x4bd84c0f1a5d4729ed709bcddd43f4c50ec4a165ece79780af8dce482ed07d4a\",\"urls\":[\"bzz-raw://62bac4bfb6982fb002f620c77e5c445e62d50241a5aa64a07e51d929f5a42180\",\"dweb:/ipfs/QmWgJUDreVY2BuMX38a1iUUR5kNbMwGnKG3VvurB7oZtuM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPrices.sol\":{\"keccak256\":\"0xb4d5244daa52aafab0c9b8806b7f973afa6a3b298add5966d586d27b78424cfb\",\"urls\":[\"bzz-raw://a819f74455aaa4f679ded378424702f3992608a640d7f943b19938eb4ff711da\",\"dweb:/ipfs/QmSMGvVTsMW3L5YSUyXTKoEsgNpGEutnq4frEZHuDdeDvz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjectUriRegistry.sol\":{\"keccak256\":\"0xc9ab647179d7d0c857fdd881d6ce96f06254739440ed08e85a1c2042218f7c7d\",\"urls\":[\"bzz-raw://8529368f30c98c8d5a69acdbe4ac79e3eeb4afa5a9cd278325c5f2184ef3d50f\",\"dweb:/ipfs/QmfUaozYiAGt1UwBDUEZvon1tEBS5sLPzqpN9dNdjQotPN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjects.sol\":{\"keccak256\":\"0x4ae42a9cc29b517b26d2b9b635deb82c16696b777deeca92dfcad33b0f81c0a0\",\"urls\":[\"bzz-raw://1dcbd860e7d7f05232d90c5e9cfd3d01e2ce986ffcdb053473d8a4d387b1a48a\",\"dweb:/ipfs/QmWKWoSJJbVWDumbnzXJBJyXmAacgC97bxMtchh8te41bn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesetApprovalHook.sol\":{\"keccak256\":\"0x592e95d159494421c6b1bcb362d0cee1df0132921697351304e9cd7af4fbd386\",\"urls\":[\"bzz-raw://5bebfd5fa67c1b6ea16fa2e76e9520e9dfe52a579f48dd94d0c2ec45f78ad178\",\"dweb:/ipfs/QmRUawEGtfYoYSHmHELGhvJoWuMsxLPKtqAXgsrb7fJboP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesets.sol\":{\"keccak256\":\"0x29b56a91e8cd4d3e718e18cd934eccbc22c668d08dc26adb43c958722497d3ab\",\"urls\":[\"bzz-raw://7ae1a723eaf16809b9bd73cd235985801aff85283976be342416fa301c3b4793\",\"dweb:/ipfs/QmZYSY7C9dPvR5EnT8YCjVSy842dBVP3wZdYQ71wyPkx2F\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplitHook.sol\":{\"keccak256\":\"0xeb8dfac7a4b81897a1c3b5d0d853a406bcff33720fb187d5ca5bb3dcc0ba3a12\",\"urls\":[\"bzz-raw://36aaeef6107cfe5b0127e063ea215aac7200f8af02e28a48e61111abd3254688\",\"dweb:/ipfs/QmQ8yQANXnhQCAWBGKsKCDsJ3A8hnTKNg5tyo79GfWXTcV\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplits.sol\":{\"keccak256\":\"0x424e6d1189b9ba7a5d441e7675ae09ff893c13c62b9ddde4dd6bc2690e96c6f3\",\"urls\":[\"bzz-raw://7e30ed7ab1daf20ff324aacfef7150a243b5db496eceaf032c7012ccb3c4227d\",\"dweb:/ipfs/QmRj5EZKmDjJy8tpvKbpz8vPSKHR5C9Q5ENe7oSLij4H8M\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTerminal.sol\":{\"keccak256\":\"0xe440530f1d0cc16578981e1d2e4e13674360c677d19a74a4b08f9f7268c70aee\",\"urls\":[\"bzz-raw://ddea4aeaf523f48a1364a02d2ccb75f3dfd8a2b9af465964e9adf3ce53f4196a\",\"dweb:/ipfs/QmVWhN1Nn9khUN8ctAgh2Ypo2vnFBgDHtDw6S232A6RkFw\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBToken.sol\":{\"keccak256\":\"0xd33757cd3da65a9d66404b7e6ddb7a27b4902885a3498b9db1673c218e9fab2d\",\"urls\":[\"bzz-raw://de28759920dab1db6cfcb4ff2ffae76491be371b791a2a0ec054ff17653872dc\",\"dweb:/ipfs/QmPXnhdxbgoV4dBRJCi9siQYRfrvcJLDtY1rp3H2vtU1Cz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokenUriResolver.sol\":{\"keccak256\":\"0xfa5cb00dcd6085d1ef912d071fe73c63f9478a2cd0f9d8bddaf659b6af2d0967\",\"urls\":[\"bzz-raw://282e4e7c342d65f77cde0e9a08fcaf20ef5cf379c7a48b639842c0ffd0b2afb8\",\"dweb:/ipfs/QmbnN3PEQeZaXdPLT75V1J79kMg7KqSMru37RHrL3z8Yf2\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokens.sol\":{\"keccak256\":\"0x1348b416ebf501409acc9970d46be89ffd076566001ceff9b96fce1b0b2c405d\",\"urls\":[\"bzz-raw://74327019f5174345afed10d9a60caa9ef908382e131882c27588b13be8364b36\",\"dweb:/ipfs/QmZAqB6hFSymTEbjqHWgE4t9NRose9AJh4etGyWnvDkhJt\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/libraries/JBConstants.sol\":{\"keccak256\":\"0x822bef715c9d5803208a2e02f8d14e0ffdb1fb2ea84698c30fd801103be4a3d2\",\"urls\":[\"bzz-raw://476c87d74e31cd43419cce01551158993c311ac47ba5fad5768e26054b3c8a91\",\"dweb:/ipfs/QmdpxoGU6suZAm9FS7R47AwSmHEFjwmf6v56WrfZM4QkJc\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAccountingContext.sol\":{\"keccak256\":\"0x9c47e048a719f784f601df69a583505432217b9868a0244876d277f84dd1ebdf\",\"urls\":[\"bzz-raw://8565f194b87914da9a02af2e760ae2ed2a9d185c6f11229f7035140776d2fec9\",\"dweb:/ipfs/QmPs2fic8W3F5e5zNRwmGmJFjb3JWGPWJ3YUe5o82nQgEn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAfterPayRecordedContext.sol\":{\"keccak256\":\"0xd26c3a774ff38be79064085970454fe2603a23a638c76270d5b1b3829206c3e8\",\"urls\":[\"bzz-raw://3b55dbe3bf1ef625b7ca04efab3de35406e6041d5b3d82c7265469c500e2b702\",\"dweb:/ipfs/QmUdBDo4Lt3mcsFcsXT2mqq3czFwZjQJFPLM89YA2VtD7k\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBCurrencyAmount.sol\":{\"keccak256\":\"0x7f321bbcbd13abfbc8f0d08a5adaaf8ef312db5bb899012fcffb6170fbb962a9\",\"urls\":[\"bzz-raw://bf9301ef1dbb3abda7b492585377617508ba048c6170f21a5e7d2b3c034eb384\",\"dweb:/ipfs/QmcetEFxSYLLNSZzPBpNn3Fc8sFcrFE8A8h12ZSj2tLgxD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBFundAccessLimitGroup.sol\":{\"keccak256\":\"0x9fdaa8d017b72da25f583700a444a86849df053f7fb8eac874ec5139bcf651e5\",\"urls\":[\"bzz-raw://c8e44c49ee444a98424a0dbeb6897a76a0bf00d88a613f62ac2012afdac754ee\",\"dweb:/ipfs/QmdYkAiRi5bXM1YYNkc7BiqimHSFodMGn1cjHR5hcpm4xH\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRuleset.sol\":{\"keccak256\":\"0x03ad7bd257d4ac55ecc42b85156dce1c70eec8572dbf8feb093c033912f305e7\",\"urls\":[\"bzz-raw://9665b4c018cd469f94bec4471222cc9e5fd58ac421a0959f70e72618fe37d55b\",\"dweb:/ipfs/QmSUf6HQv2Ckcoy5tSH1UPdD8vDMerfK29G8kaxmxB3Kow\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetConfig.sol\":{\"keccak256\":\"0x7a57ed3d73bd9457d8e1fb40f5204c364df87cbfdbf42412d5bbc08beabb49c9\",\"urls\":[\"bzz-raw://8b9a83916ee67d32b5f434b35b171c6122bbc4efeaa4fabb8dec2ca4e9e32c6e\",\"dweb:/ipfs/QmNquzUQn6ZvE2wBcMCgru3resV9UNvBWPPetyDChoh8vM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetMetadata.sol\":{\"keccak256\":\"0x7f49fe89eefe848e6af12aa452bd882430ff35e9dd44e9ff3d7be6911496486c\",\"urls\":[\"bzz-raw://136f3baeb71f8ac1c2721eb94b1d469d35cf3fba82f9138760dde6d451d052ef\",\"dweb:/ipfs/QmVeBaYMS9K3rPfneKiVYnFXbp3X8qxrw4qhN4PmuYHppz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetWithMetadata.sol\":{\"keccak256\":\"0x1bcfadf20488f6df65227f8d4d0fbf9b7539456a2389567f7fe3900d23289bc3\",\"urls\":[\"bzz-raw://0a15c399a71e5373f8c0484c6d6b83521eda31e063a2c53e4c5cec4e74550343\",\"dweb:/ipfs/QmQwi8zkjoTVXbK89NeETYimWCacTrNsesJdpLSvGdqMPX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplit.sol\":{\"keccak256\":\"0x0e1351e80cf9967caee90094712a4fc884a83f07df23a844d8cb33ebcd00721e\",\"urls\":[\"bzz-raw://19d5793c08834f2ec1d6942bd43d05042b0ecc351a57235d748a8f2ff74b6638\",\"dweb:/ipfs/QmUWjyNg7x62KsvMwAzNdpmwqCo5qK5ip9pLdshj9B2Kbf\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitGroup.sol\":{\"keccak256\":\"0x8dc98fa9e730bee8bcc0a8acf1bc4db1c9b0edf307d969c9c9caa4d6b8d856d9\",\"urls\":[\"bzz-raw://66f4306e0e69c82033927952564fd617e7c4b29aa8b165d5b53a0ebe3109ea12\",\"dweb:/ipfs/QmQqN1u7FHAdEtEZNRcKvZwYtXEQVQnLd6FMzHESP7wDtx\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitHookContext.sol\":{\"keccak256\":\"0x1cef82bf434f91d518092ea7e57db4a72ce7654f48a7db9bf44882900b6b6623\",\"urls\":[\"bzz-raw://cc5012008ab7e74cf766fe1c202a23e3a73365356bcf1e0b04ec01baf21b204b\",\"dweb:/ipfs/QmSwJvd6Yrg9XZMhjquBcak5sfUswbR5nPEuJBfpjM54VT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTerminalConfig.sol\":{\"keccak256\":\"0x9e31505080d3754b6d7db96095b0545930ef6dbc035b91fcc32fdc76a0e7c2a5\",\"urls\":[\"bzz-raw://f7702ab33a1b713c37e5397a55d8ef089289f4da8034cfe9622cbc69a98c47de\",\"dweb:/ipfs/QmXyiXps4aJyiM7vtDC373QUoqwB4DMETaZzC5cZPJKaAK\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTokenAmount.sol\":{\"keccak256\":\"0xc61593d33d5ec30e695d382948a1b944d01e29a8f2bfd29f75ecebcdbc7816de\",\"urls\":[\"bzz-raw://8992c1e5fca0c2342ecc0e734dfba6a2a752e4c29184784931d0971e44305051\",\"dweb:/ipfs/QmYNcaW3qeCkgAExUaFTq238fgfJuoYCTwjCn7jm94U4dJ\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5ef46daa3b58ef2702279d514780316efaa952915ee1aa3396f041ee2982b0b4\",\"urls\":[\"bzz-raw://2f8f2a76e23b02fc69e8cd24c3cb47da6c7af3a2d6c3a382f8ac25c6e094ade7\",\"dweb:/ipfs/QmPV4ZS4tPVv4mTCf9ejyZ1ai57EEibDRj7mN2ARDCLV5n\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0x7f7a26306c79a65fb8b3b6c757cd74660c532cd8a02e165488e30027dd34ca49\",\"urls\":[\"bzz-raw://d01e0b2b837ee2f628545e54d8715b49c7ef2befd08356c2e7f6c50dde8a1c22\",\"dweb:/ipfs/QmWBAn6y2D1xgftci97Z3qR9tQnkvwQpYwFwkTvDMvqU4i\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"],\"license\":\"MIT\"},\"src/CTDeployer.sol\":{\"keccak256\":\"0xb2194d3dfb7fe00938fc81138312ee2d1c9d8a6f85d7b855ca6b4699d352eaaf\",\"urls\":[\"bzz-raw://8c952db48946251c34d3a7ed0e788ef9b429a721c63c8d1597987c6c8ccefa33\",\"dweb:/ipfs/QmS1jTjxQgEuD1gfYwz5xAyo1Rt19RnQkKtMy8s4X8uXnF\"],\"license\":\"MIT\"},\"src/interfaces/ICTDeployer.sol\":{\"keccak256\":\"0x6106eeb42e2e55cd089821b4a40318baec5d54da314438aadbe5e665d392808a\",\"urls\":[\"bzz-raw://ce2f0be916ebdf5bb083d0b3c824fb9f3f580b5f573fd76e40be99af589b4a88\",\"dweb:/ipfs/QmUG7naVkzKSBxeoqk3Y4rn2sVz8ckfChpDeQtq2X13w14\"],\"license\":\"MIT\"},\"src/interfaces/ICTPublisher.sol\":{\"keccak256\":\"0x8fab84f363d0a7e7707eb93979b43f5e129b7d9d8221d6d240107fdf3d46da5c\",\"urls\":[\"bzz-raw://016775346d46cb4358eb2c0e29bb6ccc543b5f37cef916e98bc7a079cbd9e894\",\"dweb:/ipfs/Qmdeu2FWQNsd9vC7wZFpryESU6M6kq99EwbBUkg4HoogQ7\"],\"license\":\"MIT\"},\"src/structs/CTAllowedPost.sol\":{\"keccak256\":\"0x1cab9579ed19fea4d490b1de827fd123a8cc7ababd73ed5421351a6f7142a371\",\"urls\":[\"bzz-raw://00695b12ade810d017427a7cf20856dc326bbedcf4548ed28e81a33f09b28ad8\",\"dweb:/ipfs/QmP3UPM4xyiSUnBhkThyVp1Ww8QfqfN7rk3fPx4Gu5Whsm\"],\"license\":\"MIT\"},\"src/structs/CTDeployerAllowedPost.sol\":{\"keccak256\":\"0xd5d637c9289810ab017c49cac4eb7a7fe531d014dd579b5bfed708a7305430be\",\"urls\":[\"bzz-raw://2bd3afca6d836dffda1aae775dc29d89f8542faa49855877314ae8412126e6ee\",\"dweb:/ipfs/QmSmF1Csz1AjXkZHW2SKw5bSwYq3runmzi88N5GmkkwwUZ\"],\"license\":\"MIT\"},\"src/structs/CTPost.sol\":{\"keccak256\":\"0xc4d67fc9a0323a2a923521f2fb3042bde046cb8c78fc69d928804ab8f3987038\",\"urls\":[\"bzz-raw://fb4d0a02ada8e751cbd7061f8d7b48705a9442339510232f51595ada0e73612d\",\"dweb:/ipfs/QmbFd4CeMhcY86Ze4izYYdK2xB7tQuwdHxdP7aB5zxy8ka\"],\"license\":\"MIT\"}},\"version\":1}", "args": [ "0x219A5cE6d1c512D5b050ad2E3d380b8746BE0Cb8", - "0x0Fa5747B59042c9C2A5A9C68C22919fa00468141", + "0x0b41a8Be7E30a01A7367e06601eD204c469eF94D", "0xDd0B2C80A18617F9428c1e9b096fE2DcE222d5F8" ], - "bytecode": "0x60e06040523480156200001157600080fd5b5060405162001ae038038062001ae083398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c0516119cf6200011160003960008181610127015261074f01526000818160db015261040701526000818161014e015281816101740152818161068901526107bb01526119cf6000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100d6578063dbfbe5da14610122578063ee0fc1211461014957600080fd5b8063150b7a021461006c57806328069df2146100b5575b600080fd5b61007f61007a36600461091b565b610170565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004610b5e565b610285565b6040519081526020016100ac565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102019190610c6f565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461023857600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561025957600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b604080516001808252818301909252600091829190816020015b6103686040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b81526020019060019003908161029f57905050905069d3c21bcecceda10000008160008151811061039b5761039b610c93565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee816000815181106103e3576103e3610c93565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808881526020018781526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018981526020016040518060800160405280600067ffffffffffffffff8111156104dd576104dd610a06565b60405190808252806020026020018201604052801561059a57816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816104fb5790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018f8f906106499190610cfa565b81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106c794939291906115c4565b6020604051808303816000875af11580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a919061175d565b915085156107b9576040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610786908a908a90600401611845565b600060405180830381600087803b1580156107a057600080fd5b505af11580156107b4573d6000803e3d6000fd5b505050505b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610c6f565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8d811660248301526044820185905291909116906323b872dd90606401600060405180830381600087803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b50505050509998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461090857600080fd5b50565b8035610916816108e6565b919050565b60008060008060006080868803121561093357600080fd5b853561093e816108e6565b9450602086013561094e816108e6565b935060408601359250606086013567ffffffffffffffff8082111561097257600080fd5b818801915088601f83011261098657600080fd5b81358181111561099557600080fd5b8960208285010111156109a757600080fd5b9699959850939650602001949392505050565b60008083601f8401126109cc57600080fd5b50813567ffffffffffffffff8111156109e457600080fd5b6020830191508360208260051b85010111156109ff57600080fd5b9250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610a5857610a58610a06565b60405290565b6040516060810167ffffffffffffffff81118282101715610a5857610a58610a06565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ac857610ac8610a06565b604052919050565b600082601f830112610ae157600080fd5b813567ffffffffffffffff811115610afb57610afb610a06565b610b2c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610a81565b818152846020838601011115610b4157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600080600080600060e08a8c031215610b7c57600080fd5b610b858a61090b565b985060208a013567ffffffffffffffff80821115610ba257600080fd5b610bae8d838e016109ba565b909a50985060408c0135915080821115610bc757600080fd5b610bd38d838e01610ad0565b975060608c0135915080821115610be957600080fd5b610bf58d838e016109ba565b909750955060808c0135915080821115610c0e57600080fd5b610c1a8d838e01610ad0565b945060a08c0135915080821115610c3057600080fd5b610c3c8d838e01610ad0565b935060c08c0135915080821115610c5257600080fd5b50610c5f8c828d01610ad0565b9150509295985092959850929598565b600060208284031215610c8157600080fd5b8151610c8c816108e6565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600067ffffffffffffffff821115610cdc57610cdc610a06565b5060051b60200190565b803563ffffffff8116811461091657600080fd5b6000610d0d610d0884610cc2565b610a81565b80848252602080830192508560051b850136811115610d2b57600080fd5b855b81811015610e5157803567ffffffffffffffff80821115610d4e5760008081fd5b81890191506040808336031215610d655760008081fd5b610d6d610a35565b8335610d78816108e6565b81528387013583811115610d8c5760008081fd5b939093019236601f850112610da357600092508283fd5b83359250610db3610d0884610cc2565b83815260609384028501880193888201919036861115610dd35760008081fd5b958901955b85871015610e3b57808736031215610df05760008081fd5b610df8610a5e565b8735610e03816108e6565b8152878b013560ff81168114610e195760008081fd5b818c0152610e28888701610ce6565b8187015283529586019591890191610dd8565b5082890152508852505050938201938201610d2d565b50919695505050505050565b6000815180845260005b81811015610e8357602081850181015186830182015201610e67565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b82811015610fce57845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101610ee3565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611035602084018261ffff169052565b50604081015161104d604084018263ffffffff169052565b506060810151611061606084018215159052565b506080810151611075608084018215159052565b5060a081015161108960a084018215159052565b5060c081015161109d60c084018215159052565b5060e08101516110b160e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561121b5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c09092019160010161119d565b50509c88019c965050509285019250600101611148565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156112a057815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff168388015260409096019590820190600101611255565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b8481101561136a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261133883880182611240565b92505050606080830151925085820381870152506113568183611240565b9a86019a94505050908301906001016112c8565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b8181101561143e5786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b019591840191600101611406565b50509d89019d97505050938601935050600101611395565b6000608082516080855261146d6080860182610e5d565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b8281101561158b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a080820151610300919061154082870182611018565b505060c0820151816102c086015261155a8286018261112a565b91505060e082015191508381036102e085015261157781836112ab565b968801969588019593505050600101611497565b506040890151965089810360408b01526115a58188611377565b96505050505050506060830151848203606086015261027c8282610e5d565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526115ff6101e0850183610e5d565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261163b8483610e5d565b935060408901519150808685030160c08701526116588483610e5d565b93506060890151915061168360e087018373ffffffffffffffffffffffffffffffffffffffff169052565b60808901519150808685030161010087015261169f8483610e5d565b935060a089015191508086850301610120870152506116be8382610ec1565b92505060c08701516116e961014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611724828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b505082810360408401526117388186611456565b91505061027c606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60006020828403121561176f57600080fd5b5051919050565b80356cffffffffffffffffffffffffff8116811461091657600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126117c857600080fd5b830160208101925035905067ffffffffffffffff8111156117e857600080fd5b8060051b36038213156109ff57600080fd5b8183526000602080850194508260005b858110156112a057813561181d816108e6565b73ffffffffffffffffffffffffffffffffffffffff168752958201959082019060010161180a565b60208082528181018390526000906040808401600586901b8501820187855b8881101561198b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc088840301845281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff418b36030181126118c557600080fd5b8a0160c081356118d4816108e6565b73ffffffffffffffffffffffffffffffffffffffff1685528188013562ffffff811680821461190257600080fd5b868a015250611912828801611776565b6cffffffffffffffffffffffffff16878601526060611932838201610ce6565b63ffffffff16908601526080611949838201610ce6565b63ffffffff169086015260a061196183820184611793565b9350828288015261197583880185836117fa565b978a019796505050928701925050600101611864565b50909897505050505050505056fea264697066735822122029914f24dcb2aed1ea328417910b2890afe68be8fde4c0fb9e5100c562be942464736f6c63430008170033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100d6578063dbfbe5da14610122578063ee0fc1211461014957600080fd5b8063150b7a021461006c57806328069df2146100b5575b600080fd5b61007f61007a36600461091b565b610170565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004610b5e565b610285565b6040519081526020016100ac565b6100fd7f0000000000000000000000000fa5747b59042c9c2a5a9c68c22919fa0046814181565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6100fd7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f881565b6100fd7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb881565b60007f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102019190610c6f565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461023857600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561025957600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b604080516001808252818301909252600091829190816020015b6103686040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b81526020019060019003908161029f57905050905069d3c21bcecceda10000008160008151811061039b5761039b610c93565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee816000815181106103e3576103e3610c93565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f0000000000000000000000000fa5747b59042c9c2a5a9c68c22919fa0046814173ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808881526020018781526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018981526020016040518060800160405280600067ffffffffffffffff8111156104dd576104dd610a06565b60405190808252806020026020018201604052801561059a57816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816104fb5790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018f8f906106499190610cfa565b81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb86040518563ffffffff1660e01b81526004016106c794939291906115c4565b6020604051808303816000875af11580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a919061175d565b915085156107b9576040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8169063441e4d3490610786908a908a90600401611845565b600060405180830381600087803b1580156107a057600080fd5b505af11580156107b4573d6000803e3d6000fd5b505050505b7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610c6f565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8d811660248301526044820185905291909116906323b872dd90606401600060405180830381600087803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b50505050509998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461090857600080fd5b50565b8035610916816108e6565b919050565b60008060008060006080868803121561093357600080fd5b853561093e816108e6565b9450602086013561094e816108e6565b935060408601359250606086013567ffffffffffffffff8082111561097257600080fd5b818801915088601f83011261098657600080fd5b81358181111561099557600080fd5b8960208285010111156109a757600080fd5b9699959850939650602001949392505050565b60008083601f8401126109cc57600080fd5b50813567ffffffffffffffff8111156109e457600080fd5b6020830191508360208260051b85010111156109ff57600080fd5b9250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610a5857610a58610a06565b60405290565b6040516060810167ffffffffffffffff81118282101715610a5857610a58610a06565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ac857610ac8610a06565b604052919050565b600082601f830112610ae157600080fd5b813567ffffffffffffffff811115610afb57610afb610a06565b610b2c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610a81565b818152846020838601011115610b4157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600080600080600060e08a8c031215610b7c57600080fd5b610b858a61090b565b985060208a013567ffffffffffffffff80821115610ba257600080fd5b610bae8d838e016109ba565b909a50985060408c0135915080821115610bc757600080fd5b610bd38d838e01610ad0565b975060608c0135915080821115610be957600080fd5b610bf58d838e016109ba565b909750955060808c0135915080821115610c0e57600080fd5b610c1a8d838e01610ad0565b945060a08c0135915080821115610c3057600080fd5b610c3c8d838e01610ad0565b935060c08c0135915080821115610c5257600080fd5b50610c5f8c828d01610ad0565b9150509295985092959850929598565b600060208284031215610c8157600080fd5b8151610c8c816108e6565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600067ffffffffffffffff821115610cdc57610cdc610a06565b5060051b60200190565b803563ffffffff8116811461091657600080fd5b6000610d0d610d0884610cc2565b610a81565b80848252602080830192508560051b850136811115610d2b57600080fd5b855b81811015610e5157803567ffffffffffffffff80821115610d4e5760008081fd5b81890191506040808336031215610d655760008081fd5b610d6d610a35565b8335610d78816108e6565b81528387013583811115610d8c5760008081fd5b939093019236601f850112610da357600092508283fd5b83359250610db3610d0884610cc2565b83815260609384028501880193888201919036861115610dd35760008081fd5b958901955b85871015610e3b57808736031215610df05760008081fd5b610df8610a5e565b8735610e03816108e6565b8152878b013560ff81168114610e195760008081fd5b818c0152610e28888701610ce6565b8187015283529586019591890191610dd8565b5082890152508852505050938201938201610d2d565b50919695505050505050565b6000815180845260005b81811015610e8357602081850181015186830182015201610e67565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b82811015610fce57845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101610ee3565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611035602084018261ffff169052565b50604081015161104d604084018263ffffffff169052565b506060810151611061606084018215159052565b506080810151611075608084018215159052565b5060a081015161108960a084018215159052565b5060c081015161109d60c084018215159052565b5060e08101516110b160e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561121b5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c09092019160010161119d565b50509c88019c965050509285019250600101611148565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156112a057815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff168388015260409096019590820190600101611255565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b8481101561136a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261133883880182611240565b92505050606080830151925085820381870152506113568183611240565b9a86019a94505050908301906001016112c8565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b8181101561143e5786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b019591840191600101611406565b50509d89019d97505050938601935050600101611395565b6000608082516080855261146d6080860182610e5d565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b8281101561158b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a080820151610300919061154082870182611018565b505060c0820151816102c086015261155a8286018261112a565b91505060e082015191508381036102e085015261157781836112ab565b968801969588019593505050600101611497565b506040890151965089810360408b01526115a58188611377565b96505050505050506060830151848203606086015261027c8282610e5d565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526115ff6101e0850183610e5d565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261163b8483610e5d565b935060408901519150808685030160c08701526116588483610e5d565b93506060890151915061168360e087018373ffffffffffffffffffffffffffffffffffffffff169052565b60808901519150808685030161010087015261169f8483610e5d565b935060a089015191508086850301610120870152506116be8382610ec1565b92505060c08701516116e961014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611724828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b505082810360408401526117388186611456565b91505061027c606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60006020828403121561176f57600080fd5b5051919050565b80356cffffffffffffffffffffffffff8116811461091657600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126117c857600080fd5b830160208101925035905067ffffffffffffffff8111156117e857600080fd5b8060051b36038213156109ff57600080fd5b8183526000602080850194508260005b858110156112a057813561181d816108e6565b73ffffffffffffffffffffffffffffffffffffffff168752958201959082019060010161180a565b60208082528181018390526000906040808401600586901b8501820187855b8881101561198b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc088840301845281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff418b36030181126118c557600080fd5b8a0160c081356118d4816108e6565b73ffffffffffffffffffffffffffffffffffffffff1685528188013562ffffff811680821461190257600080fd5b868a015250611912828801611776565b6cffffffffffffffffffffffffff16878601526060611932838201610ce6565b63ffffffff16908601526080611949838201610ce6565b63ffffffff169086015260a061196183820184611793565b9350828288015261197583880185836117fa565b978a019796505050928701925050600101611864565b50909897505050505050505056fea264697066735822122029914f24dcb2aed1ea328417910b2890afe68be8fde4c0fb9e5100c562be942464736f6c63430008170033", + "bytecode": "0x60e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f0000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d81565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f881565b6101197f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb881565b60007f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f0000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d73ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb86040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033", "devdoc": { "kind": "dev", "methods": { @@ -285,7 +298,7 @@ "publisher": "The croptop publisher." } }, - "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)": { + "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)": { "params": { "allowedPosts": "The type of posts that the project should allow.", "contractUri": "A link to the collection's metadata.", @@ -296,6 +309,7 @@ "terminalConfigurations": "The terminals that the network uses to accept payments through." }, "returns": { + "hook": "The hook that was created.", "projectId": "The ID of the newly created project." } }, @@ -317,13 +331,13 @@ "PUBLISHER()": { "notice": "The Croptop publisher." }, - "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)": { + "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)": { "notice": "Deploy a simple project meant to receive posts from Croptop templates." } }, "version": 1 }, - "gitCommit": "16734148f27d14bbd70bf0ed9971692913574a0a", + "gitCommit": "95474c408eb80f99d9b5c5dc926d9372c5b46419", "sourceName": "src/CTDeployer.sol", "chainId": "421614", "linkReferences": {}, diff --git a/deployments/croptop-core-testnet/arbitrum_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json b/deployments/croptop-core-testnet/arbitrum_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json new file mode 100644 index 0000000..edc5f4e --- /dev/null +++ b/deployments/croptop-core-testnet/arbitrum_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json @@ -0,0 +1,221 @@ +{ + "_format": "sphinx-sol-execution-artifact-1", + "transactions": [ + { + "receipt": { + "blockHash": "0xf87bc119135b5a4496b6c6aeca548e70398663d19cd8487fca2475d554a0c4ea", + "blockNumber": 82270227, + "contractAddress": null, + "cumulativeGasUsed": "733889", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasPrice": "107010000", + "gasUsed": "179877", + "hash": "0x9d549c4f9a7548e7321a53bb22ad096c8bb8710f8d2180d42fa29a0a99134ab3", + "index": 4, + "logs": [ + { + "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "blockHash": "0xf87bc119135b5a4496b6c6aeca548e70398663d19cd8487fca2475d554a0c4ea", + "blockNumber": 82270227, + "data": "0x0000000000000000000000000000000000000000000000000000000000000000", + "index": 3, + "topics": [ + "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", + "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", + "0x0d33e916e8468790538e1f2f97651f5769dc6f0a3bca0bea26e3c48810cfff4a" + ], + "transactionHash": "0x9d549c4f9a7548e7321a53bb22ad096c8bb8710f8d2180d42fa29a0a99134ab3", + "transactionIndex": 4 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0xf87bc119135b5a4496b6c6aeca548e70398663d19cd8487fca2475d554a0c4ea", + "blockNumber": 82270227, + "data": "0x000000000000000000000000a2ea7657440875bf916cbfc0cfa88f13e38ad463000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000", + "index": 4, + "topics": [ + "0x382c7aec02462c9b086aba9a7f8dbb1fb8bf336e7b624b0149eeca6726d0fb4a", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", + "0x0000000000000000000000000000000000000000000000000000000000000004" + ], + "transactionHash": "0x9d549c4f9a7548e7321a53bb22ad096c8bb8710f8d2180d42fa29a0a99134ab3", + "transactionIndex": 4 + } + ], + "logsBloom": "0x000000000000000000000000000000080000000000000000000000000000000000800000000000000000040000400200000000000000000000000000000000000040000000000000000000000400010000000000000000000000021000000000080000000000000000000000400000000000000004000000000000000000000000000000040000000001000000000000000000000000000000000000000000000040000000000000000000000000000020000000000000021020000000000000000040020008000000000000000000000000000080000000000000000000020000000000000000000000000000000000000000000000a0000000000000000000", + "status": 1, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" + }, + "response": { + "accessList": [], + "blockNumber": 82270227, + "blockHash": "0xf87bc119135b5a4496b6c6aeca548e70398663d19cd8487fca2475d554a0c4ea", + "chainId": "421614", + "data": "0xbe6002c200000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003448f38f8357664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000066eee0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000100000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d52600000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce49600000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000002000000000000000000000000a2ea7657440875bf916cbfc0cfa88f13e38ad46300000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000377621d39993b993722648e43aad0f8b15ea86dfe24494c601e403a73b9954770a874ccfdec548d0e4dd16a2c51af586c4c5c98bceaca08f3dc5ac98c4f5b70040d40f0103d044a1e4431a52c327bb488871b6ba8ffef8051c28d440c3da5070e0000000000000000000000000000000000000000000000000000000000000041318a8592b87bc679f193eaed94fbdf9aaddd6beed718ca79935e8a7acb651d3917c9ea79652056ab2facb2f5904029175ec09b28e67a5a2f93365152e7dfe91d1b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasLimit": "194614", + "gasPrice": "107010000", + "hash": "0x9d549c4f9a7548e7321a53bb22ad096c8bb8710f8d2180d42fa29a0a99134ab3", + "maxFeePerGas": "216580000", + "maxPriorityFeePerGas": "0", + "nonce": 221, + "signature": { + "networkV": null, + "r": "0x04b1d249e545117a86505b496b7f3d6ef402469248d157cc0ffb08f281ee746c", + "s": "0x3922dfbd306543403899e3c1b52a50d1a0224bec5c245bfa6b2291d4a5c0047b", + "v": 27 + }, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "type": 2, + "value": "0" + } + }, + { + "receipt": { + "blockHash": "0x10733223b1e67e9121755925aad2c8a222bc1997802f2c89be63b6e559e3a16f", + "blockNumber": 82270301, + "contractAddress": null, + "cumulativeGasUsed": "1783554", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasPrice": "100000000", + "gasUsed": "1783554", + "hash": "0x978850177b3c467e40fa988e87ab11c1c8c1ef9ec82b8ea9fb4cf0106e7976fc", + "index": 1, + "logs": [ + { + "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "blockHash": "0x10733223b1e67e9121755925aad2c8a222bc1997802f2c89be63b6e559e3a16f", + "blockNumber": 82270301, + "data": "0x0000000000000000000000000000000000000000000000000000000000000000", + "index": 0, + "topics": [ + "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", + "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", + "0xe32e08cb98f13a9f6ef50c35c4833e38f76adf76627622ca74f66c1d7d2cd9a5" + ], + "transactionHash": "0x978850177b3c467e40fa988e87ab11c1c8c1ef9ec82b8ea9fb4cf0106e7976fc", + "transactionIndex": 1 + }, + { + "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", + "blockHash": "0x10733223b1e67e9121755925aad2c8a222bc1997802f2c89be63b6e559e3a16f", + "blockNumber": 82270301, + "data": "0x", + "index": 1, + "topics": [ + "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" + ], + "transactionHash": "0x978850177b3c467e40fa988e87ab11c1c8c1ef9ec82b8ea9fb4cf0106e7976fc", + "transactionIndex": 1 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0x10733223b1e67e9121755925aad2c8a222bc1997802f2c89be63b6e559e3a16f", + "blockNumber": 82270301, + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", + "index": 2, + "topics": [ + "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" + ], + "transactionHash": "0x978850177b3c467e40fa988e87ab11c1c8c1ef9ec82b8ea9fb4cf0106e7976fc", + "transactionIndex": 1 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0x10733223b1e67e9121755925aad2c8a222bc1997802f2c89be63b6e559e3a16f", + "blockNumber": 82270301, + "data": "0x", + "index": 3, + "topics": [ + "0x4383d976757d67ca920616be0b6430a681ea9d3dcce8d6d61d4603ca4a9bff63", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" + ], + "transactionHash": "0x978850177b3c467e40fa988e87ab11c1c8c1ef9ec82b8ea9fb4cf0106e7976fc", + "transactionIndex": 1 + } + ], + "logsBloom": "0x00000000000010000000000000080008000000000000000000000000000000000080000000000000000004000040020000000000000000000000000000000000000000000000200000000000040001000000000000000000000002000000000000000000000000000000000040000000000000000000000000000000000000000000000004000000000100000000000000000000000000000000000000000000004000800000000000000000000000002200000020000000102040000004000000000002000800000000000000001080000000000000000000000000000002000000000000000008000000000000000200000000000080000000000008000000", + "status": 1, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" + }, + "response": { + "accessList": [], + "blockNumber": 82270301, + "blockHash": "0x10733223b1e67e9121755925aad2c8a222bc1997802f2c89be63b6e559e3a16f", + "chainId": "421614", + "data": "0xbe6002c200000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000020a4e65ec46d00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001fc00000000000000000000000000000000000000000000000000000000000066eee0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000001ee00000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001db13b00000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000001de65f4445504c4f5945525f53414c545f000000000000000000000000000000000060e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb80000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036a90cb218caf030352959c89d66e816a048bdc113a5585474b10d0a35529a456a874ccfdec548d0e4dd16a2c51af586c4c5c98bceaca08f3dc5ac98c4f5b70040d40f0103d044a1e4431a52c327bb488871b6ba8ffef8051c28d440c3da5070e00000000000000000000000000000000000000000000000000000000", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasLimit": "2328390", + "gasPrice": "100000000", + "hash": "0x978850177b3c467e40fa988e87ab11c1c8c1ef9ec82b8ea9fb4cf0106e7976fc", + "maxFeePerGas": "200000000", + "maxPriorityFeePerGas": "0", + "nonce": 222, + "signature": { + "networkV": null, + "r": "0xdcc68c557d3bad9d47f183540b79b3dd09b95475cb1e0cb7056ea0dcfb54e625", + "s": "0x507df579e7887aec9e8a233c49c96e98d1ca2fcf10df848a0307d4ae48bc8497", + "v": 28 + }, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "type": 2, + "value": "0" + } + } + ], + "merkleRoot": "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", + "solcInputHashes": [ + "c8660e6ab664b4186505e261472223cd" + ], + "safeAddress": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", + "moduleAddress": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "executorAddress": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "nonce": "4", + "chainId": "421614", + "actions": [ + { + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "value": "0", + "txData": "0x5f4445504c4f5945525f53414c545f000000000000000000000000000000000060e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb80000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8", + "gas": "1945915", + "operation": 0, + "requireSuccess": true + } + ], + "sphinxConfig": { + "projectName": "croptop-core-testnet", + "orgId": "my-org-id", + "owners": [ + "0xba5ed94ab173e1242638F28d1449b24F1A883292" + ], + "mainnets": [ + "ethereum", + "optimism", + "base", + "arbitrum" + ], + "testnets": [ + "ethereum_sepolia", + "optimism_sepolia", + "base_sepolia", + "arbitrum_sepolia" + ], + "threshold": "1", + "saltNonce": "16" + }, + "executionMode": 2, + "initialState": { + "isSafeDeployed": true, + "isModuleDeployed": true, + "isExecuting": false + }, + "unlabeledContracts": [], + "arbitraryChain": false, + "libraries": [], + "gitCommit": "95474c408eb80f99d9b5c5dc926d9372c5b46419", + "safeInitData": null +} \ No newline at end of file diff --git a/deployments/croptop-core-testnet/base_sepolia/CTDeployer.json b/deployments/croptop-core-testnet/base_sepolia/CTDeployer.json index d8955e8..ea0633e 100644 --- a/deployments/croptop-core-testnet/base_sepolia/CTDeployer.json +++ b/deployments/croptop-core-testnet/base_sepolia/CTDeployer.json @@ -1,8 +1,8 @@ { "_format": "sphinx-sol-ct-artifact-1", - "merkleRoot": "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399", + "merkleRoot": "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", "contractName": "CTDeployer", - "address": "0xa793Fe17F1A09FEaE10fa37C63Ad8003C7eAD42c", + "address": "0x1Fd03a75AaC42E952Bf46C230Dd2dc485b3d422A", "abi": [ { "type": "constructor", @@ -115,13 +115,8 @@ { "name": "allowedPosts", "type": "tuple[]", - "internalType": "struct CTAllowedPost[]", + "internalType": "struct CTDeployerAllowedPost[]", "components": [ - { - "name": "hook", - "type": "address", - "internalType": "address" - }, { "name": "category", "type": "uint24", @@ -170,6 +165,11 @@ "name": "projectId", "type": "uint256", "internalType": "uint256" + }, + { + "name": "hook", + "type": "address", + "internalType": "contract IJB721TiersHook" } ], "stateMutability": "nonpayable" @@ -209,192 +209,85 @@ "stateMutability": "view" } ], - "solcInputHash": "f505eda6318b63c8492f7b48bcb629a8", + "solcInputHash": "c8660e6ab664b4186505e261472223cd", "receipt": { - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, + "blockHash": "0x8de720df6e80915a875cde380a80a5c09a0a57962648495ba6698e0013f55aef", + "blockNumber": 15507484, "contractAddress": null, - "cumulativeGasUsed": "5377999", + "cumulativeGasUsed": "2593854", "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", - "gasPrice": "1000259", - "gasUsed": "5001241", - "hash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", + "gasPrice": "1000276", + "gasUsed": "1758366", + "hash": "0xca917d340bc800bcbd115843720df429e50144d1a0081cfc1f01820204b94d33", "index": 8, "logs": [ { "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, + "blockHash": "0x8de720df6e80915a875cde380a80a5c09a0a57962648495ba6698e0013f55aef", + "blockNumber": 15507484, "data": "0x0000000000000000000000000000000000000000000000000000000000000000", - "index": 5, + "index": 13, "topics": [ "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", - "0x36a2e9d7c8f716ab0a74513850ab5f0ec1c47251119941bb7dfad92c7fa39c18" - ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", - "transactionIndex": 8 - }, - { - "address": "0xEcB62030E30Bb027F672F24692111492Ba2Bbc84", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, - "data": "0x000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d526", - "index": 6, - "topics": [ - "0x365b3162cd780731fc55a794b59494d472bc2af701007f581843a70673814698", - "0x0000000000000000000000000000000000000000000000000000000000000002", - "0x000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d526" - ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", - "transactionIndex": 8 - }, - { - "address": "0xEcB62030E30Bb027F672F24692111492Ba2Bbc84", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, - "data": "0x", - "index": 7, - "topics": [ - "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d526", - "0x0000000000000000000000000000000000000000000000000000000000000002" - ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", - "transactionIndex": 8 - }, - { - "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, - "data": "0x", - "index": 8, - "topics": [ - "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", - "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" - ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", - "transactionIndex": 8 - }, - { - "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, - "data": "0x0000000000000000000000000000000000000000000000000000000000000001", - "index": 9, - "topics": [ - "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" + "0x6d0335b0c57ed9619053de270551d977712518e04d234d49c3e86e1a28abaa4e" ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", + "transactionHash": "0xca917d340bc800bcbd115843720df429e50144d1a0081cfc1f01820204b94d33", "transactionIndex": 8 }, { "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, - "data": "0x", - "index": 10, - "topics": [ - "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", - "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" - ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", - "transactionIndex": 8 - }, - { - "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, - "data": "0x0000000000000000000000000000000000000000000000000000000000000002", - "index": 11, - "topics": [ - "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" - ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", - "transactionIndex": 8 - }, - { - "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, - "data": "0x", - "index": 12, - "topics": [ - "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", - "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" - ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", - "transactionIndex": 8 - }, - { - "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, - "data": "0x0000000000000000000000000000000000000000000000000000000000000003", - "index": 13, - "topics": [ - "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" - ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", - "transactionIndex": 8 - }, - { - "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, + "blockHash": "0x8de720df6e80915a875cde380a80a5c09a0a57962648495ba6698e0013f55aef", + "blockNumber": 15507484, "data": "0x", "index": 14, "topics": [ "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", + "transactionHash": "0xca917d340bc800bcbd115843720df429e50144d1a0081cfc1f01820204b94d33", "transactionIndex": 8 }, { "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, - "data": "0x0000000000000000000000000000000000000000000000000000000000000004", + "blockHash": "0x8de720df6e80915a875cde380a80a5c09a0a57962648495ba6698e0013f55aef", + "blockNumber": 15507484, + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", "index": 15, "topics": [ "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", + "transactionHash": "0xca917d340bc800bcbd115843720df429e50144d1a0081cfc1f01820204b94d33", "transactionIndex": 8 }, { "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0xbf23325fd04225ed4af4af18c5a75b72e6639e3aa88b0f1fd126f3bc45d64089", - "blockNumber": 15417450, + "blockHash": "0x8de720df6e80915a875cde380a80a5c09a0a57962648495ba6698e0013f55aef", + "blockNumber": 15507484, "data": "0x", "index": 16, "topics": [ "0x4383d976757d67ca920616be0b6430a681ea9d3dcce8d6d61d4603ca4a9bff63", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" ], - "transactionHash": "0x811afca41b8603e82f99c76dbdf492154eb1d2fb110a67544e1ea0b0f75f8891", + "transactionHash": "0xca917d340bc800bcbd115843720df429e50144d1a0081cfc1f01820204b94d33", "transactionIndex": 8 } ], - "logsBloom": "0x0400000000001000000000000008020000000000000040000000000000000000008000000000000000000400004002000000000000010000000000000000000000a000100000200000000008040000000000000000000000000000000000000000000040020000200000000040000800000000000000000000000010000000000000000004000000000100040000000040000000000000000000000000000000004000800000000000000102000000002200000020000000100000000004000000010002000800000000000000001080010000010000000000000000000022000000000000000008000000000000000200000000008080000000000008000000", + "logsBloom": "0x00000000000010000000000000080008000000000000000000000000000000000080000000000000000004000040020000000000000000000000000000000000000000000000200000000000044001000000000000000000000002000000000000000000000000000000000040000000000000020000000400000000000000000000000004000000000100000000000000000000000000000000000000000000004000800000000000000000000000002200000020000000100000000004000000000002000800000000000000001080000000000000000000000000000002000000000000000008000000000000000200000000000080000000000008000000", "status": 1, "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" }, - "metadata": "{\"compiler\":{\"version\":\"0.8.23+commit.f704f362\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"deployer\",\"type\":\"address\"},{\"internalType\":\"contract ICTPublisher\",\"name\":\"publisher\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CONTROLLER\",\"outputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DEPLOYER\",\"outputs\":[{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"PUBLISHER\",\"outputs\":[{\"internalType\":\"contract ICTPublisher\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct CTAllowedPost[]\",\"name\":\"allowedPosts\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"hook\",\"type\":\"address\"},{\"internalType\":\"uint24\",\"name\":\"category\",\"type\":\"uint24\"},{\"internalType\":\"uint104\",\"name\":\"minimumPrice\",\"type\":\"uint104\"},{\"internalType\":\"uint32\",\"name\":\"minimumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maximumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"address[]\",\"name\":\"allowedAddresses\",\"type\":\"address[]\"}]},{\"internalType\":\"string\",\"name\":\"contractUri\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"deployProjectFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}]}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"controller\":\"The controller that projects are made from.\",\"deployer\":\"The deployer to launch Croptop projects from.\",\"publisher\":\"The croptop publisher.\"}},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"params\":{\"allowedPosts\":\"The type of posts that the project should allow.\",\"contractUri\":\"A link to the collection's metadata.\",\"name\":\"The name of the collection where posts will go.\",\"owner\":\"The address that'll own the project.\",\"projectUri\":\"The metadata URI containing project info.\",\"symbol\":\"The symbol of the collection where posts will go.\",\"terminalConfigurations\":\"The terminals that the network uses to accept payments through.\"},\"returns\":{\"projectId\":\"The ID of the newly created project.\"}},\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Make sure only mints can be received.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"CONTROLLER()\":{\"notice\":\"The controller that projects are made from.\"},\"DEPLOYER()\":{\"notice\":\"The deployer to launch Croptop recorded collections from.\"},\"PUBLISHER()\":{\"notice\":\"The Croptop publisher.\"},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"notice\":\"Deploy a simple project meant to receive posts from Croptop templates.\"}},\"version\":1}},\"settings\":{\"remappings\":[\"@arbitrum/=node_modules/@arbitrum/\",\"@bananapus/=node_modules/@bananapus/\",\"@chainlink/=node_modules/@chainlink/\",\"@croptop/core/=/\",\"@eth-optimism/=node_modules/@eth-optimism/\",\"@exhausted-pigeon/=node_modules/@exhausted-pigeon/\",\"@offchainlabs/=node_modules/@offchainlabs/\",\"@openzeppelin/=node_modules/@openzeppelin/\",\"@prb/=node_modules/@prb/\",\"@rev-net/=node_modules/@rev-net/\",\"@scroll-tech/=node_modules/@scroll-tech/\",\"@sphinx-labs/contracts/=node_modules/@sphinx-labs/contracts/contracts/foundry/\",\"@uniswap/=node_modules/@uniswap/\",\"base64-sol/=node_modules/base64-sol/\",\"ds-test/=lib/forge-std/lib/ds-test/src/\",\"forge-std/=lib/forge-std/src/\",\"hardhat/=node_modules/hardhat/\",\"solady/=node_modules/solady/\",\"solmate/=node_modules/solmate/\",\"sphinx/=lib/sphinx/packages/contracts/contracts/forge-std/src/\"],\"optimizer\":{\"enabled\":true,\"runs\":100000000},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"compilationTarget\":{\"src/CTDeployer.sol\":\"CTDeployer\"},\"evmVersion\":\"paris\",\"libraries\":{}},\"sources\":{\"node_modules/@bananapus/721-hook/src/interfaces/IJB721Hook.sol\":{\"keccak256\":\"0xc4c1b2da6354c37e67e4463ca3dc652daf98769a7dc1af5b6e8bc31dc11bdc69\",\"urls\":[\"bzz-raw://583553ab050c7a96dbee7ffe8436a0f345617a816331bba0fb3d1c1e77b39110\",\"dweb:/ipfs/QmXj783jhFVdGzFqpiCgGaNjnmDE2qNGEGE7HidhzGgrSR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol\":{\"keccak256\":\"0x1b17153dcb3901a8d9156976ffb20c1047849ad1ce94c3a1934f7ca012b45bb5\",\"urls\":[\"bzz-raw://e86b10609f4ff4279592a7c185c6b202c0ff2572fad40dcbcfab878dbc735daa\",\"dweb:/ipfs/QmSJE6yTqKuA94BKAixiEFRGUUYhwtngsYDW3VCfrbMzKP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookDeployer.sol\":{\"keccak256\":\"0xdcf34032c2a22a782b7121e777715766cce471e9e8186cb710865de674d646bf\",\"urls\":[\"bzz-raw://00c19707f9fd04b9393a2081a50d69a14ed37d4a8f689c39219da6379aaacb53\",\"dweb:/ipfs/QmPdJYKrEEJxVYYaoV5rVRhoBuxmBTEH7u3J2TZtom1Sof\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol\":{\"keccak256\":\"0x9ec3cdc330019db6a8aeefac543f43054814e5a8a8beed15d51729e94df9ece1\",\"urls\":[\"bzz-raw://20632197d5f24e72999e3af9106fafa3fecbe1bc58c4cebb7cb7cdd73d573959\",\"dweb:/ipfs/QmdpF5NpGzWfCXupszxTjMN616vEGZtsiW35vGmTTxycwX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookStore.sol\":{\"keccak256\":\"0x6f3acee1130717bf1ac5c513cb167a8f121a64c047b505e9aced2b23793b79d7\",\"urls\":[\"bzz-raw://9f4dfe3be9e21c8b5446e9d37e699071f9df257a3c7a2fb8a8791e062617acbc\",\"dweb:/ipfs/QmarDks3DcMyHPVsKdj5qpma5ZBMzH8ti92MY38K76hvSA\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol\":{\"keccak256\":\"0xfa599167098f4459320ec4141a98a17b2dfffbce422baa27d8b4e4530f61ece1\",\"urls\":[\"bzz-raw://8b758b161f4c7b520b2c34b4d91e585e961b8f4ca278eebb91d791f7f2f45140\",\"dweb:/ipfs/QmcD9DF7NJ9QykQpT4KPzm4bs3fkjzukdAUWwdU6Atfw85\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol\":{\"keccak256\":\"0xff362fcd46992e56996e1b162b129a1d03ca2342a482421f279bd930b7af79dd\",\"urls\":[\"bzz-raw://56a52c0d4461fd1b278789cd31ccc77b5eab9a0d7e2fab5074bae9c8a79d0cb1\",\"dweb:/ipfs/QmagorkFXB4rEq5rfLcoZHu6jtjcMicMBPfVqMQT86xZoB\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721Tier.sol\":{\"keccak256\":\"0x99232aa73d5715977332dc7c93b03552a93259e59ae00e86b4ddc200f06adaf1\",\"urls\":[\"bzz-raw://721c0cf10a29fa11677718faafb3a2ecfcb4fbe4e1c09e70a7fac681c80fcc94\",\"dweb:/ipfs/QmSUR77E9PqnpB5kBcKNz2CGBjG9XL9FH57RWVYu3Q7GMR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TierConfig.sol\":{\"keccak256\":\"0x86e54a0de4deab9d105bf276586aebe256188b193e83eb7a6f6f93e4a29ae9c5\",\"urls\":[\"bzz-raw://04bfcc07d452c26dfc50d3a5eb62df4b3b81e063defd752e0aa5ed049a78eef4\",\"dweb:/ipfs/QmWd5nJHUvZPHxJXkrYCboXaqdtiWWkQG26sNM6qkJuAgD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersHookFlags.sol\":{\"keccak256\":\"0x283d8429f31bd58875c056515aa42abd09c95362bd929e85cfc44a0d92585766\",\"urls\":[\"bzz-raw://9a580b89fe99d9f8e930c58a4d0d63a5ff7c01c79d210af01373d066c9e72ed6\",\"dweb:/ipfs/QmdY1eSGSoTjv4KSdsG4Tm5CzJN6iqk3qTRga5ZWNbejRz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersMintReservesConfig.sol\":{\"keccak256\":\"0x86fe586a05e6d4bc6fab9b68996a7f4b74c5362ca6f24b9d8057ed7e4cd1c5ac\",\"urls\":[\"bzz-raw://0915f17d1f958ab1fe6b214d99ed62f1f858684898c803f1a8a6a557472dd140\",\"dweb:/ipfs/QmUhdnSV8UzkgvbtkYEKHrpyDEmc2aJxW5HQ1gucuxxu5A\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersSetDiscountPercentConfig.sol\":{\"keccak256\":\"0x4672eacb6b0cda5e6f5f72ddb91463c52fb90b4df421053e3b40024f19a59954\",\"urls\":[\"bzz-raw://9d8e3a0b35d6b2a6ec66527594263400189b6c766bfd6943c83704380a989aec\",\"dweb:/ipfs/QmUE7NhFWsxjFRzTuRyHJ7oRx3JXD9CnG83t29PjGAhwPR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBDeploy721TiersHookConfig.sol\":{\"keccak256\":\"0x0ce457736946394772afe54d575b68a74269cbf37a250de2d27dca6d9dd45005\",\"urls\":[\"bzz-raw://2010a8f6e19354038d3906ddb174f34464c5f341103313a5c4d628aa7732d5a8\",\"dweb:/ipfs/QmU9m18oWtYNV7UHLcW9kdwE3uzoQuGBe6sASvQTk8GZRL\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchProjectConfig.sol\":{\"keccak256\":\"0x0a8f87072dd6e5dd7c5cd5af7153172275de7e85625aa4a97da4fed65ad5b029\",\"urls\":[\"bzz-raw://b1d230835bf8fa17e8308d5d2ce4c820c4a719f451a65477f75956e100984047\",\"dweb:/ipfs/QmX6BwoYNJx1SssBLcBoPJBsg2Hv6ZP2uErXUvoMrAaQ71\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchRulesetsConfig.sol\":{\"keccak256\":\"0x0088bc7133e3fae1944247370a4eec227aeae8b371534e1d54439499644c0ede\",\"urls\":[\"bzz-raw://31847d92e9eb5e3125f07c23a651c0972e1784f748c4ce9d0c66853ee892c690\",\"dweb:/ipfs/QmRmoXg2MrkUFkMkgKvU7igkHQjhStbbc6CeiHkLCYAn7P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetConfig.sol\":{\"keccak256\":\"0x06fdbc5c40750b8d81e4c079f86a96f5ce922a0ddbb81ddc5a044aa166723f59\",\"urls\":[\"bzz-raw://b810a5768501951e08c46f1907a7f561a49c4e16f339f1679a493fcddd30cc50\",\"dweb:/ipfs/QmfCF85EAdQCnsixXCdkKb5Xz2bL9dqAoDhmiR1QoBo81P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetMetadata.sol\":{\"keccak256\":\"0x087280b3a959933c68ad19acbf07d80f9bbf632d902986c2ff624b6c31a6eeeb\",\"urls\":[\"bzz-raw://a2ddf9483f89b8a9012bc7714db4547b68a0df5fe3bf953e190d2021377f9811\",\"dweb:/ipfs/QmZcs1fuufGwWYy4fW3puX7ZRrribMMzEyEEL7WVCnrMer\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBQueueRulesetsConfig.sol\":{\"keccak256\":\"0x3ad05bfa31a90070eb4a026a13d508f9a68ca2474c3737bcda97a07307ffa554\",\"urls\":[\"bzz-raw://357f0193da0840e4b012ff1f97c65c8b6f5fea39e323a3777baf2b0625491f12\",\"dweb:/ipfs/QmZkJb8MuZ3wimiV6kry4RMp9ZkUFQA9yhfJDVUWTBWFcq\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/enums/JBApprovalStatus.sol\":{\"keccak256\":\"0x61c69b6bac7d24b566d87cda23a77e4ca9cdb87200b106aba8534cb9a0973e33\",\"urls\":[\"bzz-raw://6a9ca7249de76f77a8252eefe6bd1b63d47952f25a2acfa2c8db967cdff4470c\",\"dweb:/ipfs/QmaxSxptRQNj8bNy96EreENmrnRWdKmhyihBcxyWzBX5BN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBController.sol\":{\"keccak256\":\"0xf577428966a4db4ca17fb73abf2ff2e21cc0e231df2d7247bf410f926d6cb5f7\",\"urls\":[\"bzz-raw://7c1d847382f731b8c464b55ead0ed5c517aa3fa606aaf78b7881aab18108d504\",\"dweb:/ipfs/QmXW3DpPgjYw33A8bMxJFRVZRYjCnWTp28M8sSdPHbDq7E\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectory.sol\":{\"keccak256\":\"0xcb97db460d2948a7f51c660fe0d1b1749047a419027711c476b86ad3573534c5\",\"urls\":[\"bzz-raw://a909c7a3d471054537894dca827e6e018e92ac25299b43026e5b1e335ec4de68\",\"dweb:/ipfs/QmU1GT3F8PNMjSiPPP5cSLLofefHYFJXnywMCdqqM9xUeh\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectoryAccessControl.sol\":{\"keccak256\":\"0x1ea768919979d9f625920c05a5e633739febc822ce14b1e4724d739b19c10fb8\",\"urls\":[\"bzz-raw://7c5391a510bd610a97978245b7306d8d21c79d7c45c15f590ba9b603ea751154\",\"dweb:/ipfs/QmPSJvVWswqzv3bVq422UhA2BybMsiHoYFWGPp5Jh6Xs6a\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBFundAccessLimits.sol\":{\"keccak256\":\"0xfd8ea4cffd289e7fef6e53b5c8983eb6b941de306517f40c047048d3a8a2ca08\",\"urls\":[\"bzz-raw://2765cdee206f8b1b53874448e2481db001cd3706753190cfc9381318c7a7c41c\",\"dweb:/ipfs/QmQ5UYSadtzrb7BcTR93KnAYKXawdyDUG5HjjASV1zbys5\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPayHook.sol\":{\"keccak256\":\"0x9438866782c652c2942f4d114e35f393cd3c8b0334abce8387eed90bca35e8b2\",\"urls\":[\"bzz-raw://cfd99daf57213f92325aad7d7d16e98476d38e870470e95ba01e3ae3cdecc95d\",\"dweb:/ipfs/QmUKKAVGf7ki8BHksr99tFcRW8APveeB5tNH63ctTbbCW8\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPriceFeed.sol\":{\"keccak256\":\"0x4bd84c0f1a5d4729ed709bcddd43f4c50ec4a165ece79780af8dce482ed07d4a\",\"urls\":[\"bzz-raw://62bac4bfb6982fb002f620c77e5c445e62d50241a5aa64a07e51d929f5a42180\",\"dweb:/ipfs/QmWgJUDreVY2BuMX38a1iUUR5kNbMwGnKG3VvurB7oZtuM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPrices.sol\":{\"keccak256\":\"0xb4d5244daa52aafab0c9b8806b7f973afa6a3b298add5966d586d27b78424cfb\",\"urls\":[\"bzz-raw://a819f74455aaa4f679ded378424702f3992608a640d7f943b19938eb4ff711da\",\"dweb:/ipfs/QmSMGvVTsMW3L5YSUyXTKoEsgNpGEutnq4frEZHuDdeDvz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjectUriRegistry.sol\":{\"keccak256\":\"0xc9ab647179d7d0c857fdd881d6ce96f06254739440ed08e85a1c2042218f7c7d\",\"urls\":[\"bzz-raw://8529368f30c98c8d5a69acdbe4ac79e3eeb4afa5a9cd278325c5f2184ef3d50f\",\"dweb:/ipfs/QmfUaozYiAGt1UwBDUEZvon1tEBS5sLPzqpN9dNdjQotPN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjects.sol\":{\"keccak256\":\"0x4ae42a9cc29b517b26d2b9b635deb82c16696b777deeca92dfcad33b0f81c0a0\",\"urls\":[\"bzz-raw://1dcbd860e7d7f05232d90c5e9cfd3d01e2ce986ffcdb053473d8a4d387b1a48a\",\"dweb:/ipfs/QmWKWoSJJbVWDumbnzXJBJyXmAacgC97bxMtchh8te41bn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesetApprovalHook.sol\":{\"keccak256\":\"0x592e95d159494421c6b1bcb362d0cee1df0132921697351304e9cd7af4fbd386\",\"urls\":[\"bzz-raw://5bebfd5fa67c1b6ea16fa2e76e9520e9dfe52a579f48dd94d0c2ec45f78ad178\",\"dweb:/ipfs/QmRUawEGtfYoYSHmHELGhvJoWuMsxLPKtqAXgsrb7fJboP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesets.sol\":{\"keccak256\":\"0x29b56a91e8cd4d3e718e18cd934eccbc22c668d08dc26adb43c958722497d3ab\",\"urls\":[\"bzz-raw://7ae1a723eaf16809b9bd73cd235985801aff85283976be342416fa301c3b4793\",\"dweb:/ipfs/QmZYSY7C9dPvR5EnT8YCjVSy842dBVP3wZdYQ71wyPkx2F\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplitHook.sol\":{\"keccak256\":\"0xeb8dfac7a4b81897a1c3b5d0d853a406bcff33720fb187d5ca5bb3dcc0ba3a12\",\"urls\":[\"bzz-raw://36aaeef6107cfe5b0127e063ea215aac7200f8af02e28a48e61111abd3254688\",\"dweb:/ipfs/QmQ8yQANXnhQCAWBGKsKCDsJ3A8hnTKNg5tyo79GfWXTcV\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplits.sol\":{\"keccak256\":\"0x424e6d1189b9ba7a5d441e7675ae09ff893c13c62b9ddde4dd6bc2690e96c6f3\",\"urls\":[\"bzz-raw://7e30ed7ab1daf20ff324aacfef7150a243b5db496eceaf032c7012ccb3c4227d\",\"dweb:/ipfs/QmRj5EZKmDjJy8tpvKbpz8vPSKHR5C9Q5ENe7oSLij4H8M\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTerminal.sol\":{\"keccak256\":\"0xe440530f1d0cc16578981e1d2e4e13674360c677d19a74a4b08f9f7268c70aee\",\"urls\":[\"bzz-raw://ddea4aeaf523f48a1364a02d2ccb75f3dfd8a2b9af465964e9adf3ce53f4196a\",\"dweb:/ipfs/QmVWhN1Nn9khUN8ctAgh2Ypo2vnFBgDHtDw6S232A6RkFw\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBToken.sol\":{\"keccak256\":\"0xd33757cd3da65a9d66404b7e6ddb7a27b4902885a3498b9db1673c218e9fab2d\",\"urls\":[\"bzz-raw://de28759920dab1db6cfcb4ff2ffae76491be371b791a2a0ec054ff17653872dc\",\"dweb:/ipfs/QmPXnhdxbgoV4dBRJCi9siQYRfrvcJLDtY1rp3H2vtU1Cz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokenUriResolver.sol\":{\"keccak256\":\"0xfa5cb00dcd6085d1ef912d071fe73c63f9478a2cd0f9d8bddaf659b6af2d0967\",\"urls\":[\"bzz-raw://282e4e7c342d65f77cde0e9a08fcaf20ef5cf379c7a48b639842c0ffd0b2afb8\",\"dweb:/ipfs/QmbnN3PEQeZaXdPLT75V1J79kMg7KqSMru37RHrL3z8Yf2\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokens.sol\":{\"keccak256\":\"0x1348b416ebf501409acc9970d46be89ffd076566001ceff9b96fce1b0b2c405d\",\"urls\":[\"bzz-raw://74327019f5174345afed10d9a60caa9ef908382e131882c27588b13be8364b36\",\"dweb:/ipfs/QmZAqB6hFSymTEbjqHWgE4t9NRose9AJh4etGyWnvDkhJt\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/libraries/JBConstants.sol\":{\"keccak256\":\"0x822bef715c9d5803208a2e02f8d14e0ffdb1fb2ea84698c30fd801103be4a3d2\",\"urls\":[\"bzz-raw://476c87d74e31cd43419cce01551158993c311ac47ba5fad5768e26054b3c8a91\",\"dweb:/ipfs/QmdpxoGU6suZAm9FS7R47AwSmHEFjwmf6v56WrfZM4QkJc\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAccountingContext.sol\":{\"keccak256\":\"0x9c47e048a719f784f601df69a583505432217b9868a0244876d277f84dd1ebdf\",\"urls\":[\"bzz-raw://8565f194b87914da9a02af2e760ae2ed2a9d185c6f11229f7035140776d2fec9\",\"dweb:/ipfs/QmPs2fic8W3F5e5zNRwmGmJFjb3JWGPWJ3YUe5o82nQgEn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAfterPayRecordedContext.sol\":{\"keccak256\":\"0xd26c3a774ff38be79064085970454fe2603a23a638c76270d5b1b3829206c3e8\",\"urls\":[\"bzz-raw://3b55dbe3bf1ef625b7ca04efab3de35406e6041d5b3d82c7265469c500e2b702\",\"dweb:/ipfs/QmUdBDo4Lt3mcsFcsXT2mqq3czFwZjQJFPLM89YA2VtD7k\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBCurrencyAmount.sol\":{\"keccak256\":\"0x7f321bbcbd13abfbc8f0d08a5adaaf8ef312db5bb899012fcffb6170fbb962a9\",\"urls\":[\"bzz-raw://bf9301ef1dbb3abda7b492585377617508ba048c6170f21a5e7d2b3c034eb384\",\"dweb:/ipfs/QmcetEFxSYLLNSZzPBpNn3Fc8sFcrFE8A8h12ZSj2tLgxD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBFundAccessLimitGroup.sol\":{\"keccak256\":\"0x9fdaa8d017b72da25f583700a444a86849df053f7fb8eac874ec5139bcf651e5\",\"urls\":[\"bzz-raw://c8e44c49ee444a98424a0dbeb6897a76a0bf00d88a613f62ac2012afdac754ee\",\"dweb:/ipfs/QmdYkAiRi5bXM1YYNkc7BiqimHSFodMGn1cjHR5hcpm4xH\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRuleset.sol\":{\"keccak256\":\"0x03ad7bd257d4ac55ecc42b85156dce1c70eec8572dbf8feb093c033912f305e7\",\"urls\":[\"bzz-raw://9665b4c018cd469f94bec4471222cc9e5fd58ac421a0959f70e72618fe37d55b\",\"dweb:/ipfs/QmSUf6HQv2Ckcoy5tSH1UPdD8vDMerfK29G8kaxmxB3Kow\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetConfig.sol\":{\"keccak256\":\"0x7a57ed3d73bd9457d8e1fb40f5204c364df87cbfdbf42412d5bbc08beabb49c9\",\"urls\":[\"bzz-raw://8b9a83916ee67d32b5f434b35b171c6122bbc4efeaa4fabb8dec2ca4e9e32c6e\",\"dweb:/ipfs/QmNquzUQn6ZvE2wBcMCgru3resV9UNvBWPPetyDChoh8vM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetMetadata.sol\":{\"keccak256\":\"0x7f49fe89eefe848e6af12aa452bd882430ff35e9dd44e9ff3d7be6911496486c\",\"urls\":[\"bzz-raw://136f3baeb71f8ac1c2721eb94b1d469d35cf3fba82f9138760dde6d451d052ef\",\"dweb:/ipfs/QmVeBaYMS9K3rPfneKiVYnFXbp3X8qxrw4qhN4PmuYHppz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetWithMetadata.sol\":{\"keccak256\":\"0x1bcfadf20488f6df65227f8d4d0fbf9b7539456a2389567f7fe3900d23289bc3\",\"urls\":[\"bzz-raw://0a15c399a71e5373f8c0484c6d6b83521eda31e063a2c53e4c5cec4e74550343\",\"dweb:/ipfs/QmQwi8zkjoTVXbK89NeETYimWCacTrNsesJdpLSvGdqMPX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplit.sol\":{\"keccak256\":\"0x0e1351e80cf9967caee90094712a4fc884a83f07df23a844d8cb33ebcd00721e\",\"urls\":[\"bzz-raw://19d5793c08834f2ec1d6942bd43d05042b0ecc351a57235d748a8f2ff74b6638\",\"dweb:/ipfs/QmUWjyNg7x62KsvMwAzNdpmwqCo5qK5ip9pLdshj9B2Kbf\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitGroup.sol\":{\"keccak256\":\"0x8dc98fa9e730bee8bcc0a8acf1bc4db1c9b0edf307d969c9c9caa4d6b8d856d9\",\"urls\":[\"bzz-raw://66f4306e0e69c82033927952564fd617e7c4b29aa8b165d5b53a0ebe3109ea12\",\"dweb:/ipfs/QmQqN1u7FHAdEtEZNRcKvZwYtXEQVQnLd6FMzHESP7wDtx\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitHookContext.sol\":{\"keccak256\":\"0x1cef82bf434f91d518092ea7e57db4a72ce7654f48a7db9bf44882900b6b6623\",\"urls\":[\"bzz-raw://cc5012008ab7e74cf766fe1c202a23e3a73365356bcf1e0b04ec01baf21b204b\",\"dweb:/ipfs/QmSwJvd6Yrg9XZMhjquBcak5sfUswbR5nPEuJBfpjM54VT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTerminalConfig.sol\":{\"keccak256\":\"0x9e31505080d3754b6d7db96095b0545930ef6dbc035b91fcc32fdc76a0e7c2a5\",\"urls\":[\"bzz-raw://f7702ab33a1b713c37e5397a55d8ef089289f4da8034cfe9622cbc69a98c47de\",\"dweb:/ipfs/QmXyiXps4aJyiM7vtDC373QUoqwB4DMETaZzC5cZPJKaAK\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTokenAmount.sol\":{\"keccak256\":\"0xc61593d33d5ec30e695d382948a1b944d01e29a8f2bfd29f75ecebcdbc7816de\",\"urls\":[\"bzz-raw://8992c1e5fca0c2342ecc0e734dfba6a2a752e4c29184784931d0971e44305051\",\"dweb:/ipfs/QmYNcaW3qeCkgAExUaFTq238fgfJuoYCTwjCn7jm94U4dJ\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5ef46daa3b58ef2702279d514780316efaa952915ee1aa3396f041ee2982b0b4\",\"urls\":[\"bzz-raw://2f8f2a76e23b02fc69e8cd24c3cb47da6c7af3a2d6c3a382f8ac25c6e094ade7\",\"dweb:/ipfs/QmPV4ZS4tPVv4mTCf9ejyZ1ai57EEibDRj7mN2ARDCLV5n\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0x7f7a26306c79a65fb8b3b6c757cd74660c532cd8a02e165488e30027dd34ca49\",\"urls\":[\"bzz-raw://d01e0b2b837ee2f628545e54d8715b49c7ef2befd08356c2e7f6c50dde8a1c22\",\"dweb:/ipfs/QmWBAn6y2D1xgftci97Z3qR9tQnkvwQpYwFwkTvDMvqU4i\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"],\"license\":\"MIT\"},\"src/CTDeployer.sol\":{\"keccak256\":\"0x5bcf3bbdacbcade3a43678d92238c65bbdb84ddf5945311b2155f63052bbff46\",\"urls\":[\"bzz-raw://dbc4e2e3e75d52e42f980924abab04c4f160d542d1f12c59dce13435b7b2718e\",\"dweb:/ipfs/Qmb4jyz2Y76kVZShJVsUzyrT8dPp8Yo7xiRADByB5GA77o\"],\"license\":\"MIT\"},\"src/interfaces/ICTDeployer.sol\":{\"keccak256\":\"0x23c4ec623f382c88a7061e11b7e4a32f604aee92788256a77705532c9bc62d82\",\"urls\":[\"bzz-raw://8bf22d2fefd98e2d28191860315d45badd0d13df446de32e3b660001c2862c21\",\"dweb:/ipfs/QmcxVwo45WobQ3JwAhpjmvkDcivyqVnw7kFoaimDY51tj4\"],\"license\":\"MIT\"},\"src/interfaces/ICTPublisher.sol\":{\"keccak256\":\"0x8fab84f363d0a7e7707eb93979b43f5e129b7d9d8221d6d240107fdf3d46da5c\",\"urls\":[\"bzz-raw://016775346d46cb4358eb2c0e29bb6ccc543b5f37cef916e98bc7a079cbd9e894\",\"dweb:/ipfs/Qmdeu2FWQNsd9vC7wZFpryESU6M6kq99EwbBUkg4HoogQ7\"],\"license\":\"MIT\"},\"src/structs/CTAllowedPost.sol\":{\"keccak256\":\"0x1cab9579ed19fea4d490b1de827fd123a8cc7ababd73ed5421351a6f7142a371\",\"urls\":[\"bzz-raw://00695b12ade810d017427a7cf20856dc326bbedcf4548ed28e81a33f09b28ad8\",\"dweb:/ipfs/QmP3UPM4xyiSUnBhkThyVp1Ww8QfqfN7rk3fPx4Gu5Whsm\"],\"license\":\"MIT\"},\"src/structs/CTPost.sol\":{\"keccak256\":\"0xc4d67fc9a0323a2a923521f2fb3042bde046cb8c78fc69d928804ab8f3987038\",\"urls\":[\"bzz-raw://fb4d0a02ada8e751cbd7061f8d7b48705a9442339510232f51595ada0e73612d\",\"dweb:/ipfs/QmbFd4CeMhcY86Ze4izYYdK2xB7tQuwdHxdP7aB5zxy8ka\"],\"license\":\"MIT\"}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.8.23+commit.f704f362\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"deployer\",\"type\":\"address\"},{\"internalType\":\"contract ICTPublisher\",\"name\":\"publisher\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CONTROLLER\",\"outputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DEPLOYER\",\"outputs\":[{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"PUBLISHER\",\"outputs\":[{\"internalType\":\"contract ICTPublisher\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct CTDeployerAllowedPost[]\",\"name\":\"allowedPosts\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint24\",\"name\":\"category\",\"type\":\"uint24\"},{\"internalType\":\"uint104\",\"name\":\"minimumPrice\",\"type\":\"uint104\"},{\"internalType\":\"uint32\",\"name\":\"minimumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maximumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"address[]\",\"name\":\"allowedAddresses\",\"type\":\"address[]\"}]},{\"internalType\":\"string\",\"name\":\"contractUri\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"deployProjectFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"contract IJB721TiersHook\",\"name\":\"hook\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}]}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"controller\":\"The controller that projects are made from.\",\"deployer\":\"The deployer to launch Croptop projects from.\",\"publisher\":\"The croptop publisher.\"}},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"params\":{\"allowedPosts\":\"The type of posts that the project should allow.\",\"contractUri\":\"A link to the collection's metadata.\",\"name\":\"The name of the collection where posts will go.\",\"owner\":\"The address that'll own the project.\",\"projectUri\":\"The metadata URI containing project info.\",\"symbol\":\"The symbol of the collection where posts will go.\",\"terminalConfigurations\":\"The terminals that the network uses to accept payments through.\"},\"returns\":{\"hook\":\"The hook that was created.\",\"projectId\":\"The ID of the newly created project.\"}},\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Make sure only mints can be received.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"CONTROLLER()\":{\"notice\":\"The controller that projects are made from.\"},\"DEPLOYER()\":{\"notice\":\"The deployer to launch Croptop recorded collections from.\"},\"PUBLISHER()\":{\"notice\":\"The Croptop publisher.\"},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"notice\":\"Deploy a simple project meant to receive posts from Croptop templates.\"}},\"version\":1}},\"settings\":{\"remappings\":[\"@arbitrum/=node_modules/@arbitrum/\",\"@bananapus/=node_modules/@bananapus/\",\"@chainlink/=node_modules/@chainlink/\",\"@croptop/core/=/\",\"@eth-optimism/=node_modules/@eth-optimism/\",\"@exhausted-pigeon/=node_modules/@exhausted-pigeon/\",\"@offchainlabs/=node_modules/@offchainlabs/\",\"@openzeppelin/=node_modules/@openzeppelin/\",\"@prb/=node_modules/@prb/\",\"@rev-net/=node_modules/@rev-net/\",\"@scroll-tech/=node_modules/@scroll-tech/\",\"@sphinx-labs/contracts/=node_modules/@sphinx-labs/contracts/contracts/foundry/\",\"@uniswap/=node_modules/@uniswap/\",\"base64-sol/=node_modules/base64-sol/\",\"ds-test/=lib/forge-std/lib/ds-test/src/\",\"forge-std/=lib/forge-std/src/\",\"hardhat/=node_modules/hardhat/\",\"solady/=node_modules/solady/\",\"solmate/=node_modules/solmate/\",\"sphinx/=lib/sphinx/packages/contracts/contracts/forge-std/src/\"],\"optimizer\":{\"enabled\":true,\"runs\":100000000},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"compilationTarget\":{\"src/CTDeployer.sol\":\"CTDeployer\"},\"evmVersion\":\"paris\",\"libraries\":{}},\"sources\":{\"node_modules/@bananapus/721-hook/src/interfaces/IJB721Hook.sol\":{\"keccak256\":\"0xc4c1b2da6354c37e67e4463ca3dc652daf98769a7dc1af5b6e8bc31dc11bdc69\",\"urls\":[\"bzz-raw://583553ab050c7a96dbee7ffe8436a0f345617a816331bba0fb3d1c1e77b39110\",\"dweb:/ipfs/QmXj783jhFVdGzFqpiCgGaNjnmDE2qNGEGE7HidhzGgrSR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol\":{\"keccak256\":\"0x1b17153dcb3901a8d9156976ffb20c1047849ad1ce94c3a1934f7ca012b45bb5\",\"urls\":[\"bzz-raw://e86b10609f4ff4279592a7c185c6b202c0ff2572fad40dcbcfab878dbc735daa\",\"dweb:/ipfs/QmSJE6yTqKuA94BKAixiEFRGUUYhwtngsYDW3VCfrbMzKP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookDeployer.sol\":{\"keccak256\":\"0xdcf34032c2a22a782b7121e777715766cce471e9e8186cb710865de674d646bf\",\"urls\":[\"bzz-raw://00c19707f9fd04b9393a2081a50d69a14ed37d4a8f689c39219da6379aaacb53\",\"dweb:/ipfs/QmPdJYKrEEJxVYYaoV5rVRhoBuxmBTEH7u3J2TZtom1Sof\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol\":{\"keccak256\":\"0xffcee695bbdf4960b99b905b966ba6225a1909e65397c1f32389e77ec49207d0\",\"urls\":[\"bzz-raw://7aadbb2a046524b164e0886b9deb049823e5b1c92efcf2ad7fd8e22d5a746d51\",\"dweb:/ipfs/QmbhafFJmJ6MUtrSzHqLnshz1PNUz3rgcvB8zif1p8sf7d\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookStore.sol\":{\"keccak256\":\"0x6f3acee1130717bf1ac5c513cb167a8f121a64c047b505e9aced2b23793b79d7\",\"urls\":[\"bzz-raw://9f4dfe3be9e21c8b5446e9d37e699071f9df257a3c7a2fb8a8791e062617acbc\",\"dweb:/ipfs/QmarDks3DcMyHPVsKdj5qpma5ZBMzH8ti92MY38K76hvSA\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol\":{\"keccak256\":\"0xfa599167098f4459320ec4141a98a17b2dfffbce422baa27d8b4e4530f61ece1\",\"urls\":[\"bzz-raw://8b758b161f4c7b520b2c34b4d91e585e961b8f4ca278eebb91d791f7f2f45140\",\"dweb:/ipfs/QmcD9DF7NJ9QykQpT4KPzm4bs3fkjzukdAUWwdU6Atfw85\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol\":{\"keccak256\":\"0xff362fcd46992e56996e1b162b129a1d03ca2342a482421f279bd930b7af79dd\",\"urls\":[\"bzz-raw://56a52c0d4461fd1b278789cd31ccc77b5eab9a0d7e2fab5074bae9c8a79d0cb1\",\"dweb:/ipfs/QmagorkFXB4rEq5rfLcoZHu6jtjcMicMBPfVqMQT86xZoB\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721Tier.sol\":{\"keccak256\":\"0x99232aa73d5715977332dc7c93b03552a93259e59ae00e86b4ddc200f06adaf1\",\"urls\":[\"bzz-raw://721c0cf10a29fa11677718faafb3a2ecfcb4fbe4e1c09e70a7fac681c80fcc94\",\"dweb:/ipfs/QmSUR77E9PqnpB5kBcKNz2CGBjG9XL9FH57RWVYu3Q7GMR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TierConfig.sol\":{\"keccak256\":\"0x86e54a0de4deab9d105bf276586aebe256188b193e83eb7a6f6f93e4a29ae9c5\",\"urls\":[\"bzz-raw://04bfcc07d452c26dfc50d3a5eb62df4b3b81e063defd752e0aa5ed049a78eef4\",\"dweb:/ipfs/QmWd5nJHUvZPHxJXkrYCboXaqdtiWWkQG26sNM6qkJuAgD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersHookFlags.sol\":{\"keccak256\":\"0x283d8429f31bd58875c056515aa42abd09c95362bd929e85cfc44a0d92585766\",\"urls\":[\"bzz-raw://9a580b89fe99d9f8e930c58a4d0d63a5ff7c01c79d210af01373d066c9e72ed6\",\"dweb:/ipfs/QmdY1eSGSoTjv4KSdsG4Tm5CzJN6iqk3qTRga5ZWNbejRz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersMintReservesConfig.sol\":{\"keccak256\":\"0x86fe586a05e6d4bc6fab9b68996a7f4b74c5362ca6f24b9d8057ed7e4cd1c5ac\",\"urls\":[\"bzz-raw://0915f17d1f958ab1fe6b214d99ed62f1f858684898c803f1a8a6a557472dd140\",\"dweb:/ipfs/QmUhdnSV8UzkgvbtkYEKHrpyDEmc2aJxW5HQ1gucuxxu5A\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersSetDiscountPercentConfig.sol\":{\"keccak256\":\"0x4672eacb6b0cda5e6f5f72ddb91463c52fb90b4df421053e3b40024f19a59954\",\"urls\":[\"bzz-raw://9d8e3a0b35d6b2a6ec66527594263400189b6c766bfd6943c83704380a989aec\",\"dweb:/ipfs/QmUE7NhFWsxjFRzTuRyHJ7oRx3JXD9CnG83t29PjGAhwPR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBDeploy721TiersHookConfig.sol\":{\"keccak256\":\"0x0ce457736946394772afe54d575b68a74269cbf37a250de2d27dca6d9dd45005\",\"urls\":[\"bzz-raw://2010a8f6e19354038d3906ddb174f34464c5f341103313a5c4d628aa7732d5a8\",\"dweb:/ipfs/QmU9m18oWtYNV7UHLcW9kdwE3uzoQuGBe6sASvQTk8GZRL\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchProjectConfig.sol\":{\"keccak256\":\"0x0a8f87072dd6e5dd7c5cd5af7153172275de7e85625aa4a97da4fed65ad5b029\",\"urls\":[\"bzz-raw://b1d230835bf8fa17e8308d5d2ce4c820c4a719f451a65477f75956e100984047\",\"dweb:/ipfs/QmX6BwoYNJx1SssBLcBoPJBsg2Hv6ZP2uErXUvoMrAaQ71\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchRulesetsConfig.sol\":{\"keccak256\":\"0x0088bc7133e3fae1944247370a4eec227aeae8b371534e1d54439499644c0ede\",\"urls\":[\"bzz-raw://31847d92e9eb5e3125f07c23a651c0972e1784f748c4ce9d0c66853ee892c690\",\"dweb:/ipfs/QmRmoXg2MrkUFkMkgKvU7igkHQjhStbbc6CeiHkLCYAn7P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetConfig.sol\":{\"keccak256\":\"0x06fdbc5c40750b8d81e4c079f86a96f5ce922a0ddbb81ddc5a044aa166723f59\",\"urls\":[\"bzz-raw://b810a5768501951e08c46f1907a7f561a49c4e16f339f1679a493fcddd30cc50\",\"dweb:/ipfs/QmfCF85EAdQCnsixXCdkKb5Xz2bL9dqAoDhmiR1QoBo81P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetMetadata.sol\":{\"keccak256\":\"0x087280b3a959933c68ad19acbf07d80f9bbf632d902986c2ff624b6c31a6eeeb\",\"urls\":[\"bzz-raw://a2ddf9483f89b8a9012bc7714db4547b68a0df5fe3bf953e190d2021377f9811\",\"dweb:/ipfs/QmZcs1fuufGwWYy4fW3puX7ZRrribMMzEyEEL7WVCnrMer\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBQueueRulesetsConfig.sol\":{\"keccak256\":\"0x3ad05bfa31a90070eb4a026a13d508f9a68ca2474c3737bcda97a07307ffa554\",\"urls\":[\"bzz-raw://357f0193da0840e4b012ff1f97c65c8b6f5fea39e323a3777baf2b0625491f12\",\"dweb:/ipfs/QmZkJb8MuZ3wimiV6kry4RMp9ZkUFQA9yhfJDVUWTBWFcq\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/enums/JBApprovalStatus.sol\":{\"keccak256\":\"0x61c69b6bac7d24b566d87cda23a77e4ca9cdb87200b106aba8534cb9a0973e33\",\"urls\":[\"bzz-raw://6a9ca7249de76f77a8252eefe6bd1b63d47952f25a2acfa2c8db967cdff4470c\",\"dweb:/ipfs/QmaxSxptRQNj8bNy96EreENmrnRWdKmhyihBcxyWzBX5BN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBController.sol\":{\"keccak256\":\"0xf577428966a4db4ca17fb73abf2ff2e21cc0e231df2d7247bf410f926d6cb5f7\",\"urls\":[\"bzz-raw://7c1d847382f731b8c464b55ead0ed5c517aa3fa606aaf78b7881aab18108d504\",\"dweb:/ipfs/QmXW3DpPgjYw33A8bMxJFRVZRYjCnWTp28M8sSdPHbDq7E\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectory.sol\":{\"keccak256\":\"0xcb97db460d2948a7f51c660fe0d1b1749047a419027711c476b86ad3573534c5\",\"urls\":[\"bzz-raw://a909c7a3d471054537894dca827e6e018e92ac25299b43026e5b1e335ec4de68\",\"dweb:/ipfs/QmU1GT3F8PNMjSiPPP5cSLLofefHYFJXnywMCdqqM9xUeh\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectoryAccessControl.sol\":{\"keccak256\":\"0x1ea768919979d9f625920c05a5e633739febc822ce14b1e4724d739b19c10fb8\",\"urls\":[\"bzz-raw://7c5391a510bd610a97978245b7306d8d21c79d7c45c15f590ba9b603ea751154\",\"dweb:/ipfs/QmPSJvVWswqzv3bVq422UhA2BybMsiHoYFWGPp5Jh6Xs6a\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBFundAccessLimits.sol\":{\"keccak256\":\"0xfd8ea4cffd289e7fef6e53b5c8983eb6b941de306517f40c047048d3a8a2ca08\",\"urls\":[\"bzz-raw://2765cdee206f8b1b53874448e2481db001cd3706753190cfc9381318c7a7c41c\",\"dweb:/ipfs/QmQ5UYSadtzrb7BcTR93KnAYKXawdyDUG5HjjASV1zbys5\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPayHook.sol\":{\"keccak256\":\"0x9438866782c652c2942f4d114e35f393cd3c8b0334abce8387eed90bca35e8b2\",\"urls\":[\"bzz-raw://cfd99daf57213f92325aad7d7d16e98476d38e870470e95ba01e3ae3cdecc95d\",\"dweb:/ipfs/QmUKKAVGf7ki8BHksr99tFcRW8APveeB5tNH63ctTbbCW8\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPriceFeed.sol\":{\"keccak256\":\"0x4bd84c0f1a5d4729ed709bcddd43f4c50ec4a165ece79780af8dce482ed07d4a\",\"urls\":[\"bzz-raw://62bac4bfb6982fb002f620c77e5c445e62d50241a5aa64a07e51d929f5a42180\",\"dweb:/ipfs/QmWgJUDreVY2BuMX38a1iUUR5kNbMwGnKG3VvurB7oZtuM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPrices.sol\":{\"keccak256\":\"0xb4d5244daa52aafab0c9b8806b7f973afa6a3b298add5966d586d27b78424cfb\",\"urls\":[\"bzz-raw://a819f74455aaa4f679ded378424702f3992608a640d7f943b19938eb4ff711da\",\"dweb:/ipfs/QmSMGvVTsMW3L5YSUyXTKoEsgNpGEutnq4frEZHuDdeDvz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjectUriRegistry.sol\":{\"keccak256\":\"0xc9ab647179d7d0c857fdd881d6ce96f06254739440ed08e85a1c2042218f7c7d\",\"urls\":[\"bzz-raw://8529368f30c98c8d5a69acdbe4ac79e3eeb4afa5a9cd278325c5f2184ef3d50f\",\"dweb:/ipfs/QmfUaozYiAGt1UwBDUEZvon1tEBS5sLPzqpN9dNdjQotPN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjects.sol\":{\"keccak256\":\"0x4ae42a9cc29b517b26d2b9b635deb82c16696b777deeca92dfcad33b0f81c0a0\",\"urls\":[\"bzz-raw://1dcbd860e7d7f05232d90c5e9cfd3d01e2ce986ffcdb053473d8a4d387b1a48a\",\"dweb:/ipfs/QmWKWoSJJbVWDumbnzXJBJyXmAacgC97bxMtchh8te41bn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesetApprovalHook.sol\":{\"keccak256\":\"0x592e95d159494421c6b1bcb362d0cee1df0132921697351304e9cd7af4fbd386\",\"urls\":[\"bzz-raw://5bebfd5fa67c1b6ea16fa2e76e9520e9dfe52a579f48dd94d0c2ec45f78ad178\",\"dweb:/ipfs/QmRUawEGtfYoYSHmHELGhvJoWuMsxLPKtqAXgsrb7fJboP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesets.sol\":{\"keccak256\":\"0x29b56a91e8cd4d3e718e18cd934eccbc22c668d08dc26adb43c958722497d3ab\",\"urls\":[\"bzz-raw://7ae1a723eaf16809b9bd73cd235985801aff85283976be342416fa301c3b4793\",\"dweb:/ipfs/QmZYSY7C9dPvR5EnT8YCjVSy842dBVP3wZdYQ71wyPkx2F\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplitHook.sol\":{\"keccak256\":\"0xeb8dfac7a4b81897a1c3b5d0d853a406bcff33720fb187d5ca5bb3dcc0ba3a12\",\"urls\":[\"bzz-raw://36aaeef6107cfe5b0127e063ea215aac7200f8af02e28a48e61111abd3254688\",\"dweb:/ipfs/QmQ8yQANXnhQCAWBGKsKCDsJ3A8hnTKNg5tyo79GfWXTcV\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplits.sol\":{\"keccak256\":\"0x424e6d1189b9ba7a5d441e7675ae09ff893c13c62b9ddde4dd6bc2690e96c6f3\",\"urls\":[\"bzz-raw://7e30ed7ab1daf20ff324aacfef7150a243b5db496eceaf032c7012ccb3c4227d\",\"dweb:/ipfs/QmRj5EZKmDjJy8tpvKbpz8vPSKHR5C9Q5ENe7oSLij4H8M\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTerminal.sol\":{\"keccak256\":\"0xe440530f1d0cc16578981e1d2e4e13674360c677d19a74a4b08f9f7268c70aee\",\"urls\":[\"bzz-raw://ddea4aeaf523f48a1364a02d2ccb75f3dfd8a2b9af465964e9adf3ce53f4196a\",\"dweb:/ipfs/QmVWhN1Nn9khUN8ctAgh2Ypo2vnFBgDHtDw6S232A6RkFw\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBToken.sol\":{\"keccak256\":\"0xd33757cd3da65a9d66404b7e6ddb7a27b4902885a3498b9db1673c218e9fab2d\",\"urls\":[\"bzz-raw://de28759920dab1db6cfcb4ff2ffae76491be371b791a2a0ec054ff17653872dc\",\"dweb:/ipfs/QmPXnhdxbgoV4dBRJCi9siQYRfrvcJLDtY1rp3H2vtU1Cz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokenUriResolver.sol\":{\"keccak256\":\"0xfa5cb00dcd6085d1ef912d071fe73c63f9478a2cd0f9d8bddaf659b6af2d0967\",\"urls\":[\"bzz-raw://282e4e7c342d65f77cde0e9a08fcaf20ef5cf379c7a48b639842c0ffd0b2afb8\",\"dweb:/ipfs/QmbnN3PEQeZaXdPLT75V1J79kMg7KqSMru37RHrL3z8Yf2\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokens.sol\":{\"keccak256\":\"0x1348b416ebf501409acc9970d46be89ffd076566001ceff9b96fce1b0b2c405d\",\"urls\":[\"bzz-raw://74327019f5174345afed10d9a60caa9ef908382e131882c27588b13be8364b36\",\"dweb:/ipfs/QmZAqB6hFSymTEbjqHWgE4t9NRose9AJh4etGyWnvDkhJt\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/libraries/JBConstants.sol\":{\"keccak256\":\"0x822bef715c9d5803208a2e02f8d14e0ffdb1fb2ea84698c30fd801103be4a3d2\",\"urls\":[\"bzz-raw://476c87d74e31cd43419cce01551158993c311ac47ba5fad5768e26054b3c8a91\",\"dweb:/ipfs/QmdpxoGU6suZAm9FS7R47AwSmHEFjwmf6v56WrfZM4QkJc\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAccountingContext.sol\":{\"keccak256\":\"0x9c47e048a719f784f601df69a583505432217b9868a0244876d277f84dd1ebdf\",\"urls\":[\"bzz-raw://8565f194b87914da9a02af2e760ae2ed2a9d185c6f11229f7035140776d2fec9\",\"dweb:/ipfs/QmPs2fic8W3F5e5zNRwmGmJFjb3JWGPWJ3YUe5o82nQgEn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAfterPayRecordedContext.sol\":{\"keccak256\":\"0xd26c3a774ff38be79064085970454fe2603a23a638c76270d5b1b3829206c3e8\",\"urls\":[\"bzz-raw://3b55dbe3bf1ef625b7ca04efab3de35406e6041d5b3d82c7265469c500e2b702\",\"dweb:/ipfs/QmUdBDo4Lt3mcsFcsXT2mqq3czFwZjQJFPLM89YA2VtD7k\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBCurrencyAmount.sol\":{\"keccak256\":\"0x7f321bbcbd13abfbc8f0d08a5adaaf8ef312db5bb899012fcffb6170fbb962a9\",\"urls\":[\"bzz-raw://bf9301ef1dbb3abda7b492585377617508ba048c6170f21a5e7d2b3c034eb384\",\"dweb:/ipfs/QmcetEFxSYLLNSZzPBpNn3Fc8sFcrFE8A8h12ZSj2tLgxD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBFundAccessLimitGroup.sol\":{\"keccak256\":\"0x9fdaa8d017b72da25f583700a444a86849df053f7fb8eac874ec5139bcf651e5\",\"urls\":[\"bzz-raw://c8e44c49ee444a98424a0dbeb6897a76a0bf00d88a613f62ac2012afdac754ee\",\"dweb:/ipfs/QmdYkAiRi5bXM1YYNkc7BiqimHSFodMGn1cjHR5hcpm4xH\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRuleset.sol\":{\"keccak256\":\"0x03ad7bd257d4ac55ecc42b85156dce1c70eec8572dbf8feb093c033912f305e7\",\"urls\":[\"bzz-raw://9665b4c018cd469f94bec4471222cc9e5fd58ac421a0959f70e72618fe37d55b\",\"dweb:/ipfs/QmSUf6HQv2Ckcoy5tSH1UPdD8vDMerfK29G8kaxmxB3Kow\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetConfig.sol\":{\"keccak256\":\"0x7a57ed3d73bd9457d8e1fb40f5204c364df87cbfdbf42412d5bbc08beabb49c9\",\"urls\":[\"bzz-raw://8b9a83916ee67d32b5f434b35b171c6122bbc4efeaa4fabb8dec2ca4e9e32c6e\",\"dweb:/ipfs/QmNquzUQn6ZvE2wBcMCgru3resV9UNvBWPPetyDChoh8vM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetMetadata.sol\":{\"keccak256\":\"0x7f49fe89eefe848e6af12aa452bd882430ff35e9dd44e9ff3d7be6911496486c\",\"urls\":[\"bzz-raw://136f3baeb71f8ac1c2721eb94b1d469d35cf3fba82f9138760dde6d451d052ef\",\"dweb:/ipfs/QmVeBaYMS9K3rPfneKiVYnFXbp3X8qxrw4qhN4PmuYHppz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetWithMetadata.sol\":{\"keccak256\":\"0x1bcfadf20488f6df65227f8d4d0fbf9b7539456a2389567f7fe3900d23289bc3\",\"urls\":[\"bzz-raw://0a15c399a71e5373f8c0484c6d6b83521eda31e063a2c53e4c5cec4e74550343\",\"dweb:/ipfs/QmQwi8zkjoTVXbK89NeETYimWCacTrNsesJdpLSvGdqMPX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplit.sol\":{\"keccak256\":\"0x0e1351e80cf9967caee90094712a4fc884a83f07df23a844d8cb33ebcd00721e\",\"urls\":[\"bzz-raw://19d5793c08834f2ec1d6942bd43d05042b0ecc351a57235d748a8f2ff74b6638\",\"dweb:/ipfs/QmUWjyNg7x62KsvMwAzNdpmwqCo5qK5ip9pLdshj9B2Kbf\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitGroup.sol\":{\"keccak256\":\"0x8dc98fa9e730bee8bcc0a8acf1bc4db1c9b0edf307d969c9c9caa4d6b8d856d9\",\"urls\":[\"bzz-raw://66f4306e0e69c82033927952564fd617e7c4b29aa8b165d5b53a0ebe3109ea12\",\"dweb:/ipfs/QmQqN1u7FHAdEtEZNRcKvZwYtXEQVQnLd6FMzHESP7wDtx\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitHookContext.sol\":{\"keccak256\":\"0x1cef82bf434f91d518092ea7e57db4a72ce7654f48a7db9bf44882900b6b6623\",\"urls\":[\"bzz-raw://cc5012008ab7e74cf766fe1c202a23e3a73365356bcf1e0b04ec01baf21b204b\",\"dweb:/ipfs/QmSwJvd6Yrg9XZMhjquBcak5sfUswbR5nPEuJBfpjM54VT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTerminalConfig.sol\":{\"keccak256\":\"0x9e31505080d3754b6d7db96095b0545930ef6dbc035b91fcc32fdc76a0e7c2a5\",\"urls\":[\"bzz-raw://f7702ab33a1b713c37e5397a55d8ef089289f4da8034cfe9622cbc69a98c47de\",\"dweb:/ipfs/QmXyiXps4aJyiM7vtDC373QUoqwB4DMETaZzC5cZPJKaAK\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTokenAmount.sol\":{\"keccak256\":\"0xc61593d33d5ec30e695d382948a1b944d01e29a8f2bfd29f75ecebcdbc7816de\",\"urls\":[\"bzz-raw://8992c1e5fca0c2342ecc0e734dfba6a2a752e4c29184784931d0971e44305051\",\"dweb:/ipfs/QmYNcaW3qeCkgAExUaFTq238fgfJuoYCTwjCn7jm94U4dJ\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5ef46daa3b58ef2702279d514780316efaa952915ee1aa3396f041ee2982b0b4\",\"urls\":[\"bzz-raw://2f8f2a76e23b02fc69e8cd24c3cb47da6c7af3a2d6c3a382f8ac25c6e094ade7\",\"dweb:/ipfs/QmPV4ZS4tPVv4mTCf9ejyZ1ai57EEibDRj7mN2ARDCLV5n\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0x7f7a26306c79a65fb8b3b6c757cd74660c532cd8a02e165488e30027dd34ca49\",\"urls\":[\"bzz-raw://d01e0b2b837ee2f628545e54d8715b49c7ef2befd08356c2e7f6c50dde8a1c22\",\"dweb:/ipfs/QmWBAn6y2D1xgftci97Z3qR9tQnkvwQpYwFwkTvDMvqU4i\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"],\"license\":\"MIT\"},\"src/CTDeployer.sol\":{\"keccak256\":\"0xb2194d3dfb7fe00938fc81138312ee2d1c9d8a6f85d7b855ca6b4699d352eaaf\",\"urls\":[\"bzz-raw://8c952db48946251c34d3a7ed0e788ef9b429a721c63c8d1597987c6c8ccefa33\",\"dweb:/ipfs/QmS1jTjxQgEuD1gfYwz5xAyo1Rt19RnQkKtMy8s4X8uXnF\"],\"license\":\"MIT\"},\"src/interfaces/ICTDeployer.sol\":{\"keccak256\":\"0x6106eeb42e2e55cd089821b4a40318baec5d54da314438aadbe5e665d392808a\",\"urls\":[\"bzz-raw://ce2f0be916ebdf5bb083d0b3c824fb9f3f580b5f573fd76e40be99af589b4a88\",\"dweb:/ipfs/QmUG7naVkzKSBxeoqk3Y4rn2sVz8ckfChpDeQtq2X13w14\"],\"license\":\"MIT\"},\"src/interfaces/ICTPublisher.sol\":{\"keccak256\":\"0x8fab84f363d0a7e7707eb93979b43f5e129b7d9d8221d6d240107fdf3d46da5c\",\"urls\":[\"bzz-raw://016775346d46cb4358eb2c0e29bb6ccc543b5f37cef916e98bc7a079cbd9e894\",\"dweb:/ipfs/Qmdeu2FWQNsd9vC7wZFpryESU6M6kq99EwbBUkg4HoogQ7\"],\"license\":\"MIT\"},\"src/structs/CTAllowedPost.sol\":{\"keccak256\":\"0x1cab9579ed19fea4d490b1de827fd123a8cc7ababd73ed5421351a6f7142a371\",\"urls\":[\"bzz-raw://00695b12ade810d017427a7cf20856dc326bbedcf4548ed28e81a33f09b28ad8\",\"dweb:/ipfs/QmP3UPM4xyiSUnBhkThyVp1Ww8QfqfN7rk3fPx4Gu5Whsm\"],\"license\":\"MIT\"},\"src/structs/CTDeployerAllowedPost.sol\":{\"keccak256\":\"0xd5d637c9289810ab017c49cac4eb7a7fe531d014dd579b5bfed708a7305430be\",\"urls\":[\"bzz-raw://2bd3afca6d836dffda1aae775dc29d89f8542faa49855877314ae8412126e6ee\",\"dweb:/ipfs/QmSmF1Csz1AjXkZHW2SKw5bSwYq3runmzi88N5GmkkwwUZ\"],\"license\":\"MIT\"},\"src/structs/CTPost.sol\":{\"keccak256\":\"0xc4d67fc9a0323a2a923521f2fb3042bde046cb8c78fc69d928804ab8f3987038\",\"urls\":[\"bzz-raw://fb4d0a02ada8e751cbd7061f8d7b48705a9442339510232f51595ada0e73612d\",\"dweb:/ipfs/QmbFd4CeMhcY86Ze4izYYdK2xB7tQuwdHxdP7aB5zxy8ka\"],\"license\":\"MIT\"}},\"version\":1}", "args": [ "0x219A5cE6d1c512D5b050ad2E3d380b8746BE0Cb8", - "0x0Fa5747B59042c9C2A5A9C68C22919fa00468141", + "0x0b41a8Be7E30a01A7367e06601eD204c469eF94D", "0xDd0B2C80A18617F9428c1e9b096fE2DcE222d5F8" ], - "bytecode": "0x60e06040523480156200001157600080fd5b5060405162001ae038038062001ae083398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c0516119cf6200011160003960008181610127015261074f01526000818160db015261040701526000818161014e015281816101740152818161068901526107bb01526119cf6000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100d6578063dbfbe5da14610122578063ee0fc1211461014957600080fd5b8063150b7a021461006c57806328069df2146100b5575b600080fd5b61007f61007a36600461091b565b610170565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004610b5e565b610285565b6040519081526020016100ac565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102019190610c6f565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461023857600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561025957600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b604080516001808252818301909252600091829190816020015b6103686040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b81526020019060019003908161029f57905050905069d3c21bcecceda10000008160008151811061039b5761039b610c93565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee816000815181106103e3576103e3610c93565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808881526020018781526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018981526020016040518060800160405280600067ffffffffffffffff8111156104dd576104dd610a06565b60405190808252806020026020018201604052801561059a57816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816104fb5790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018f8f906106499190610cfa565b81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106c794939291906115c4565b6020604051808303816000875af11580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a919061175d565b915085156107b9576040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610786908a908a90600401611845565b600060405180830381600087803b1580156107a057600080fd5b505af11580156107b4573d6000803e3d6000fd5b505050505b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610c6f565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8d811660248301526044820185905291909116906323b872dd90606401600060405180830381600087803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b50505050509998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461090857600080fd5b50565b8035610916816108e6565b919050565b60008060008060006080868803121561093357600080fd5b853561093e816108e6565b9450602086013561094e816108e6565b935060408601359250606086013567ffffffffffffffff8082111561097257600080fd5b818801915088601f83011261098657600080fd5b81358181111561099557600080fd5b8960208285010111156109a757600080fd5b9699959850939650602001949392505050565b60008083601f8401126109cc57600080fd5b50813567ffffffffffffffff8111156109e457600080fd5b6020830191508360208260051b85010111156109ff57600080fd5b9250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610a5857610a58610a06565b60405290565b6040516060810167ffffffffffffffff81118282101715610a5857610a58610a06565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ac857610ac8610a06565b604052919050565b600082601f830112610ae157600080fd5b813567ffffffffffffffff811115610afb57610afb610a06565b610b2c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610a81565b818152846020838601011115610b4157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600080600080600060e08a8c031215610b7c57600080fd5b610b858a61090b565b985060208a013567ffffffffffffffff80821115610ba257600080fd5b610bae8d838e016109ba565b909a50985060408c0135915080821115610bc757600080fd5b610bd38d838e01610ad0565b975060608c0135915080821115610be957600080fd5b610bf58d838e016109ba565b909750955060808c0135915080821115610c0e57600080fd5b610c1a8d838e01610ad0565b945060a08c0135915080821115610c3057600080fd5b610c3c8d838e01610ad0565b935060c08c0135915080821115610c5257600080fd5b50610c5f8c828d01610ad0565b9150509295985092959850929598565b600060208284031215610c8157600080fd5b8151610c8c816108e6565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600067ffffffffffffffff821115610cdc57610cdc610a06565b5060051b60200190565b803563ffffffff8116811461091657600080fd5b6000610d0d610d0884610cc2565b610a81565b80848252602080830192508560051b850136811115610d2b57600080fd5b855b81811015610e5157803567ffffffffffffffff80821115610d4e5760008081fd5b81890191506040808336031215610d655760008081fd5b610d6d610a35565b8335610d78816108e6565b81528387013583811115610d8c5760008081fd5b939093019236601f850112610da357600092508283fd5b83359250610db3610d0884610cc2565b83815260609384028501880193888201919036861115610dd35760008081fd5b958901955b85871015610e3b57808736031215610df05760008081fd5b610df8610a5e565b8735610e03816108e6565b8152878b013560ff81168114610e195760008081fd5b818c0152610e28888701610ce6565b8187015283529586019591890191610dd8565b5082890152508852505050938201938201610d2d565b50919695505050505050565b6000815180845260005b81811015610e8357602081850181015186830182015201610e67565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b82811015610fce57845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101610ee3565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611035602084018261ffff169052565b50604081015161104d604084018263ffffffff169052565b506060810151611061606084018215159052565b506080810151611075608084018215159052565b5060a081015161108960a084018215159052565b5060c081015161109d60c084018215159052565b5060e08101516110b160e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561121b5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c09092019160010161119d565b50509c88019c965050509285019250600101611148565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156112a057815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff168388015260409096019590820190600101611255565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b8481101561136a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261133883880182611240565b92505050606080830151925085820381870152506113568183611240565b9a86019a94505050908301906001016112c8565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b8181101561143e5786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b019591840191600101611406565b50509d89019d97505050938601935050600101611395565b6000608082516080855261146d6080860182610e5d565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b8281101561158b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a080820151610300919061154082870182611018565b505060c0820151816102c086015261155a8286018261112a565b91505060e082015191508381036102e085015261157781836112ab565b968801969588019593505050600101611497565b506040890151965089810360408b01526115a58188611377565b96505050505050506060830151848203606086015261027c8282610e5d565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526115ff6101e0850183610e5d565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261163b8483610e5d565b935060408901519150808685030160c08701526116588483610e5d565b93506060890151915061168360e087018373ffffffffffffffffffffffffffffffffffffffff169052565b60808901519150808685030161010087015261169f8483610e5d565b935060a089015191508086850301610120870152506116be8382610ec1565b92505060c08701516116e961014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611724828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b505082810360408401526117388186611456565b91505061027c606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60006020828403121561176f57600080fd5b5051919050565b80356cffffffffffffffffffffffffff8116811461091657600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126117c857600080fd5b830160208101925035905067ffffffffffffffff8111156117e857600080fd5b8060051b36038213156109ff57600080fd5b8183526000602080850194508260005b858110156112a057813561181d816108e6565b73ffffffffffffffffffffffffffffffffffffffff168752958201959082019060010161180a565b60208082528181018390526000906040808401600586901b8501820187855b8881101561198b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc088840301845281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff418b36030181126118c557600080fd5b8a0160c081356118d4816108e6565b73ffffffffffffffffffffffffffffffffffffffff1685528188013562ffffff811680821461190257600080fd5b868a015250611912828801611776565b6cffffffffffffffffffffffffff16878601526060611932838201610ce6565b63ffffffff16908601526080611949838201610ce6565b63ffffffff169086015260a061196183820184611793565b9350828288015261197583880185836117fa565b978a019796505050928701925050600101611864565b50909897505050505050505056fea264697066735822122029914f24dcb2aed1ea328417910b2890afe68be8fde4c0fb9e5100c562be942464736f6c63430008170033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100d6578063dbfbe5da14610122578063ee0fc1211461014957600080fd5b8063150b7a021461006c57806328069df2146100b5575b600080fd5b61007f61007a36600461091b565b610170565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004610b5e565b610285565b6040519081526020016100ac565b6100fd7f0000000000000000000000000fa5747b59042c9c2a5a9c68c22919fa0046814181565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6100fd7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f881565b6100fd7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb881565b60007f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102019190610c6f565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461023857600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561025957600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b604080516001808252818301909252600091829190816020015b6103686040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b81526020019060019003908161029f57905050905069d3c21bcecceda10000008160008151811061039b5761039b610c93565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee816000815181106103e3576103e3610c93565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f0000000000000000000000000fa5747b59042c9c2a5a9c68c22919fa0046814173ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808881526020018781526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018981526020016040518060800160405280600067ffffffffffffffff8111156104dd576104dd610a06565b60405190808252806020026020018201604052801561059a57816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816104fb5790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018f8f906106499190610cfa565b81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb86040518563ffffffff1660e01b81526004016106c794939291906115c4565b6020604051808303816000875af11580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a919061175d565b915085156107b9576040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8169063441e4d3490610786908a908a90600401611845565b600060405180830381600087803b1580156107a057600080fd5b505af11580156107b4573d6000803e3d6000fd5b505050505b7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610c6f565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8d811660248301526044820185905291909116906323b872dd90606401600060405180830381600087803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b50505050509998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461090857600080fd5b50565b8035610916816108e6565b919050565b60008060008060006080868803121561093357600080fd5b853561093e816108e6565b9450602086013561094e816108e6565b935060408601359250606086013567ffffffffffffffff8082111561097257600080fd5b818801915088601f83011261098657600080fd5b81358181111561099557600080fd5b8960208285010111156109a757600080fd5b9699959850939650602001949392505050565b60008083601f8401126109cc57600080fd5b50813567ffffffffffffffff8111156109e457600080fd5b6020830191508360208260051b85010111156109ff57600080fd5b9250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610a5857610a58610a06565b60405290565b6040516060810167ffffffffffffffff81118282101715610a5857610a58610a06565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ac857610ac8610a06565b604052919050565b600082601f830112610ae157600080fd5b813567ffffffffffffffff811115610afb57610afb610a06565b610b2c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610a81565b818152846020838601011115610b4157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600080600080600060e08a8c031215610b7c57600080fd5b610b858a61090b565b985060208a013567ffffffffffffffff80821115610ba257600080fd5b610bae8d838e016109ba565b909a50985060408c0135915080821115610bc757600080fd5b610bd38d838e01610ad0565b975060608c0135915080821115610be957600080fd5b610bf58d838e016109ba565b909750955060808c0135915080821115610c0e57600080fd5b610c1a8d838e01610ad0565b945060a08c0135915080821115610c3057600080fd5b610c3c8d838e01610ad0565b935060c08c0135915080821115610c5257600080fd5b50610c5f8c828d01610ad0565b9150509295985092959850929598565b600060208284031215610c8157600080fd5b8151610c8c816108e6565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600067ffffffffffffffff821115610cdc57610cdc610a06565b5060051b60200190565b803563ffffffff8116811461091657600080fd5b6000610d0d610d0884610cc2565b610a81565b80848252602080830192508560051b850136811115610d2b57600080fd5b855b81811015610e5157803567ffffffffffffffff80821115610d4e5760008081fd5b81890191506040808336031215610d655760008081fd5b610d6d610a35565b8335610d78816108e6565b81528387013583811115610d8c5760008081fd5b939093019236601f850112610da357600092508283fd5b83359250610db3610d0884610cc2565b83815260609384028501880193888201919036861115610dd35760008081fd5b958901955b85871015610e3b57808736031215610df05760008081fd5b610df8610a5e565b8735610e03816108e6565b8152878b013560ff81168114610e195760008081fd5b818c0152610e28888701610ce6565b8187015283529586019591890191610dd8565b5082890152508852505050938201938201610d2d565b50919695505050505050565b6000815180845260005b81811015610e8357602081850181015186830182015201610e67565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b82811015610fce57845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101610ee3565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611035602084018261ffff169052565b50604081015161104d604084018263ffffffff169052565b506060810151611061606084018215159052565b506080810151611075608084018215159052565b5060a081015161108960a084018215159052565b5060c081015161109d60c084018215159052565b5060e08101516110b160e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561121b5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c09092019160010161119d565b50509c88019c965050509285019250600101611148565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156112a057815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff168388015260409096019590820190600101611255565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b8481101561136a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261133883880182611240565b92505050606080830151925085820381870152506113568183611240565b9a86019a94505050908301906001016112c8565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b8181101561143e5786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b019591840191600101611406565b50509d89019d97505050938601935050600101611395565b6000608082516080855261146d6080860182610e5d565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b8281101561158b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a080820151610300919061154082870182611018565b505060c0820151816102c086015261155a8286018261112a565b91505060e082015191508381036102e085015261157781836112ab565b968801969588019593505050600101611497565b506040890151965089810360408b01526115a58188611377565b96505050505050506060830151848203606086015261027c8282610e5d565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526115ff6101e0850183610e5d565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261163b8483610e5d565b935060408901519150808685030160c08701526116588483610e5d565b93506060890151915061168360e087018373ffffffffffffffffffffffffffffffffffffffff169052565b60808901519150808685030161010087015261169f8483610e5d565b935060a089015191508086850301610120870152506116be8382610ec1565b92505060c08701516116e961014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611724828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b505082810360408401526117388186611456565b91505061027c606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60006020828403121561176f57600080fd5b5051919050565b80356cffffffffffffffffffffffffff8116811461091657600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126117c857600080fd5b830160208101925035905067ffffffffffffffff8111156117e857600080fd5b8060051b36038213156109ff57600080fd5b8183526000602080850194508260005b858110156112a057813561181d816108e6565b73ffffffffffffffffffffffffffffffffffffffff168752958201959082019060010161180a565b60208082528181018390526000906040808401600586901b8501820187855b8881101561198b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc088840301845281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff418b36030181126118c557600080fd5b8a0160c081356118d4816108e6565b73ffffffffffffffffffffffffffffffffffffffff1685528188013562ffffff811680821461190257600080fd5b868a015250611912828801611776565b6cffffffffffffffffffffffffff16878601526060611932838201610ce6565b63ffffffff16908601526080611949838201610ce6565b63ffffffff169086015260a061196183820184611793565b9350828288015261197583880185836117fa565b978a019796505050928701925050600101611864565b50909897505050505050505056fea264697066735822122029914f24dcb2aed1ea328417910b2890afe68be8fde4c0fb9e5100c562be942464736f6c63430008170033", + "bytecode": "0x60e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f0000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d81565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f881565b6101197f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb881565b60007f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f0000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d73ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb86040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033", "devdoc": { "kind": "dev", "methods": { @@ -405,7 +298,7 @@ "publisher": "The croptop publisher." } }, - "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)": { + "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)": { "params": { "allowedPosts": "The type of posts that the project should allow.", "contractUri": "A link to the collection's metadata.", @@ -416,6 +309,7 @@ "terminalConfigurations": "The terminals that the network uses to accept payments through." }, "returns": { + "hook": "The hook that was created.", "projectId": "The ID of the newly created project." } }, @@ -437,13 +331,13 @@ "PUBLISHER()": { "notice": "The Croptop publisher." }, - "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)": { + "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)": { "notice": "Deploy a simple project meant to receive posts from Croptop templates." } }, "version": 1 }, - "gitCommit": "16734148f27d14bbd70bf0ed9971692913574a0a", + "gitCommit": "95474c408eb80f99d9b5c5dc926d9372c5b46419", "sourceName": "src/CTDeployer.sol", "chainId": "84532", "linkReferences": {}, diff --git a/deployments/croptop-core-testnet/base_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json b/deployments/croptop-core-testnet/base_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json new file mode 100644 index 0000000..d59def6 --- /dev/null +++ b/deployments/croptop-core-testnet/base_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json @@ -0,0 +1,221 @@ +{ + "_format": "sphinx-sol-execution-artifact-1", + "transactions": [ + { + "receipt": { + "blockHash": "0xba598050773fec2490461269403856984aab2cccde43bd4adf7f7e96368e27f4", + "blockNumber": 15507475, + "contractAddress": null, + "cumulativeGasUsed": "461222", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasPrice": "1000273", + "gasUsed": "176665", + "hash": "0x03b57ef9da391f6720da3ad83246161ead978ef37108937549d6f9664cb1fe2e", + "index": 6, + "logs": [ + { + "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "blockHash": "0xba598050773fec2490461269403856984aab2cccde43bd4adf7f7e96368e27f4", + "blockNumber": 15507475, + "data": "0x0000000000000000000000000000000000000000000000000000000000000000", + "index": 4, + "topics": [ + "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", + "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", + "0xd4630aa6f4a84b520ffe9bbcbab2bcbbd06e0ce899f7babc6e4473ed259eb3b6" + ], + "transactionHash": "0x03b57ef9da391f6720da3ad83246161ead978ef37108937549d6f9664cb1fe2e", + "transactionIndex": 6 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0xba598050773fec2490461269403856984aab2cccde43bd4adf7f7e96368e27f4", + "blockNumber": 15507475, + "data": "0x000000000000000000000000a2ea7657440875bf916cbfc0cfa88f13e38ad463000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000", + "index": 5, + "topics": [ + "0x382c7aec02462c9b086aba9a7f8dbb1fb8bf336e7b624b0149eeca6726d0fb4a", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", + "0x0000000000000000000000000000000000000000000000000000000000000004" + ], + "transactionHash": "0x03b57ef9da391f6720da3ad83246161ead978ef37108937549d6f9664cb1fe2e", + "transactionIndex": 6 + } + ], + "logsBloom": "0x000000000000000000000000000000080000000000000000000000000000000000800000000000000000040000400200000000000020000000000800000000000040000000000000000000000400010000000000000000000000021000000000080000000000000000000000400000000000000000000000000000000000000000000000040000000001000000000000000000000000000000000000000000000040000000000000000000000000000020000000000000001020000000000000000000020008000000000000000000000000000080000000000004000000020000000000000000000000000000000000000000000000a0000000000000000000", + "status": 1, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" + }, + "response": { + "accessList": [], + "blockNumber": 15507475, + "blockHash": "0xba598050773fec2490461269403856984aab2cccde43bd4adf7f7e96368e27f4", + "chainId": "84532", + "data": "0xbe6002c200000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003448f38f8357664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000014a340000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000100000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d52600000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce49600000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000002000000000000000000000000a2ea7657440875bf916cbfc0cfa88f13e38ad46300000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036a52cbc2ef47ce68148d030e426a78a5d32eeed4931a55ef66ef3c7cea118dba09bae7ed631f337f22f6db1111de450a24e71903d7506a195a1771f4aa0ae02875bb4e2308d9ba2dfd2306c11e3ef6a8f1b40ae9f18bf1a90c74e928db178d640000000000000000000000000000000000000000000000000000000000000041318a8592b87bc679f193eaed94fbdf9aaddd6beed718ca79935e8a7acb651d3917c9ea79652056ab2facb2f5904029175ec09b28e67a5a2f93365152e7dfe91d1b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasLimit": "188958", + "gasPrice": "1000273", + "hash": "0x03b57ef9da391f6720da3ad83246161ead978ef37108937549d6f9664cb1fe2e", + "maxFeePerGas": "1000546", + "maxPriorityFeePerGas": "1000000", + "nonce": 99, + "signature": { + "networkV": null, + "r": "0x8b12a3311c066c48648e8a561349800ea49447f58816bdbdf946e71afaae7416", + "s": "0x3dd69d78ad0aaeea7e2ca277cae757f90687e7d2bf6fadbd312829e4da728b8e", + "v": 27 + }, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "type": 2, + "value": "0" + } + }, + { + "receipt": { + "blockHash": "0x8de720df6e80915a875cde380a80a5c09a0a57962648495ba6698e0013f55aef", + "blockNumber": 15507484, + "contractAddress": null, + "cumulativeGasUsed": "2593854", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasPrice": "1000276", + "gasUsed": "1758366", + "hash": "0xca917d340bc800bcbd115843720df429e50144d1a0081cfc1f01820204b94d33", + "index": 8, + "logs": [ + { + "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "blockHash": "0x8de720df6e80915a875cde380a80a5c09a0a57962648495ba6698e0013f55aef", + "blockNumber": 15507484, + "data": "0x0000000000000000000000000000000000000000000000000000000000000000", + "index": 13, + "topics": [ + "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", + "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", + "0x6d0335b0c57ed9619053de270551d977712518e04d234d49c3e86e1a28abaa4e" + ], + "transactionHash": "0xca917d340bc800bcbd115843720df429e50144d1a0081cfc1f01820204b94d33", + "transactionIndex": 8 + }, + { + "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", + "blockHash": "0x8de720df6e80915a875cde380a80a5c09a0a57962648495ba6698e0013f55aef", + "blockNumber": 15507484, + "data": "0x", + "index": 14, + "topics": [ + "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" + ], + "transactionHash": "0xca917d340bc800bcbd115843720df429e50144d1a0081cfc1f01820204b94d33", + "transactionIndex": 8 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0x8de720df6e80915a875cde380a80a5c09a0a57962648495ba6698e0013f55aef", + "blockNumber": 15507484, + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", + "index": 15, + "topics": [ + "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" + ], + "transactionHash": "0xca917d340bc800bcbd115843720df429e50144d1a0081cfc1f01820204b94d33", + "transactionIndex": 8 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0x8de720df6e80915a875cde380a80a5c09a0a57962648495ba6698e0013f55aef", + "blockNumber": 15507484, + "data": "0x", + "index": 16, + "topics": [ + "0x4383d976757d67ca920616be0b6430a681ea9d3dcce8d6d61d4603ca4a9bff63", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" + ], + "transactionHash": "0xca917d340bc800bcbd115843720df429e50144d1a0081cfc1f01820204b94d33", + "transactionIndex": 8 + } + ], + "logsBloom": "0x00000000000010000000000000080008000000000000000000000000000000000080000000000000000004000040020000000000000000000000000000000000000000000000200000000000044001000000000000000000000002000000000000000000000000000000000040000000000000020000000400000000000000000000000004000000000100000000000000000000000000000000000000000000004000800000000000000000000000002200000020000000100000000004000000000002000800000000000000001080000000000000000000000000000002000000000000000008000000000000000200000000000080000000000008000000", + "status": 1, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" + }, + "response": { + "accessList": [], + "blockNumber": 15507484, + "blockHash": "0x8de720df6e80915a875cde380a80a5c09a0a57962648495ba6698e0013f55aef", + "chainId": "84532", + "data": "0xbe6002c200000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000020a4e65ec46d00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001fc00000000000000000000000000000000000000000000000000000000000014a340000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000001ee00000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001db13b00000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000001de65f4445504c4f5945525f53414c545f000000000000000000000000000000000060e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb80000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003b1ed9d10164d8d112adfbab5fd2ecf6285fcd97c8cf22f19fb0a945b966dd85ae0d6386c2bc2359f6229ef0a391171b1372453b521c4d53adf4ccf8e583408cd0d40f0103d044a1e4431a52c327bb488871b6ba8ffef8051c28d440c3da5070e00000000000000000000000000000000000000000000000000000000", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasLimit": "2305196", + "gasPrice": "1000276", + "hash": "0xca917d340bc800bcbd115843720df429e50144d1a0081cfc1f01820204b94d33", + "maxFeePerGas": "1000552", + "maxPriorityFeePerGas": "1000000", + "nonce": 100, + "signature": { + "networkV": null, + "r": "0x3d1a7f807bac69e28cb30c6cc0d475e0841772577e512f58a9e1774dff0b14e1", + "s": "0x07be54a4442d0bf6291fc2b381e943c8d0285d8d6ac13b41e3e5011a5b46215d", + "v": 28 + }, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "type": 2, + "value": "0" + } + } + ], + "merkleRoot": "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", + "solcInputHashes": [ + "c8660e6ab664b4186505e261472223cd" + ], + "safeAddress": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", + "moduleAddress": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "executorAddress": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "nonce": "4", + "chainId": "84532", + "actions": [ + { + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "value": "0", + "txData": "0x5f4445504c4f5945525f53414c545f000000000000000000000000000000000060e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb80000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8", + "gas": "1945915", + "operation": 0, + "requireSuccess": true + } + ], + "sphinxConfig": { + "projectName": "croptop-core-testnet", + "orgId": "my-org-id", + "owners": [ + "0xba5ed94ab173e1242638F28d1449b24F1A883292" + ], + "mainnets": [ + "ethereum", + "optimism", + "base", + "arbitrum" + ], + "testnets": [ + "ethereum_sepolia", + "optimism_sepolia", + "base_sepolia", + "arbitrum_sepolia" + ], + "threshold": "1", + "saltNonce": "16" + }, + "executionMode": 2, + "initialState": { + "isSafeDeployed": true, + "isModuleDeployed": true, + "isExecuting": false + }, + "unlabeledContracts": [], + "arbitraryChain": false, + "libraries": [], + "gitCommit": "95474c408eb80f99d9b5c5dc926d9372c5b46419", + "safeInitData": null +} \ No newline at end of file diff --git a/deployments/croptop-core-testnet/optimism_sepolia/CTDeployer.json b/deployments/croptop-core-testnet/optimism_sepolia/CTDeployer.json index 7f69e31..139ac87 100644 --- a/deployments/croptop-core-testnet/optimism_sepolia/CTDeployer.json +++ b/deployments/croptop-core-testnet/optimism_sepolia/CTDeployer.json @@ -1,8 +1,8 @@ { "_format": "sphinx-sol-ct-artifact-1", - "merkleRoot": "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399", + "merkleRoot": "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", "contractName": "CTDeployer", - "address": "0xa793Fe17F1A09FEaE10fa37C63Ad8003C7eAD42c", + "address": "0x1Fd03a75AaC42E952Bf46C230Dd2dc485b3d422A", "abi": [ { "type": "constructor", @@ -115,13 +115,8 @@ { "name": "allowedPosts", "type": "tuple[]", - "internalType": "struct CTAllowedPost[]", + "internalType": "struct CTDeployerAllowedPost[]", "components": [ - { - "name": "hook", - "type": "address", - "internalType": "address" - }, { "name": "category", "type": "uint24", @@ -170,6 +165,11 @@ "name": "projectId", "type": "uint256", "internalType": "uint256" + }, + { + "name": "hook", + "type": "address", + "internalType": "contract IJB721TiersHook" } ], "stateMutability": "nonpayable" @@ -209,192 +209,85 @@ "stateMutability": "view" } ], - "solcInputHash": "f505eda6318b63c8492f7b48bcb629a8", + "solcInputHash": "c8660e6ab664b4186505e261472223cd", "receipt": { - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, + "blockHash": "0x14057344c8a7b49711e327c53057a7aed3e722f6bdea5bec469377d35996c2a7", + "blockNumber": 17490359, "contractAddress": null, - "cumulativeGasUsed": "5528999", + "cumulativeGasUsed": "2567538", "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", "gasPrice": "1000274", - "gasUsed": "5001273", - "hash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "index": 7, + "gasUsed": "1758344", + "hash": "0x1162dc0ce123bf6bda9492d98b56c51d7f851fe6c3d9fe6462b9e7d692ee2b58", + "index": 5, "logs": [ { "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, + "blockHash": "0x14057344c8a7b49711e327c53057a7aed3e722f6bdea5bec469377d35996c2a7", + "blockNumber": 17490359, "data": "0x0000000000000000000000000000000000000000000000000000000000000000", "index": 11, "topics": [ "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", - "0xaa0b6a6636c961de2dc83a4a112124ae2e27301343f849b682351d968d9572aa" - ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 - }, - { - "address": "0xEcB62030E30Bb027F672F24692111492Ba2Bbc84", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, - "data": "0x000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d526", - "index": 12, - "topics": [ - "0x365b3162cd780731fc55a794b59494d472bc2af701007f581843a70673814698", - "0x0000000000000000000000000000000000000000000000000000000000000002", - "0x000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d526" - ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 - }, - { - "address": "0xEcB62030E30Bb027F672F24692111492Ba2Bbc84", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, - "data": "0x", - "index": 13, - "topics": [ - "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d526", - "0x0000000000000000000000000000000000000000000000000000000000000002" + "0x5c7a30a108c1b2ee2041a2bef5ed3f114d40e11283e306d70ebc2a565d6b1aef" ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 + "transactionHash": "0x1162dc0ce123bf6bda9492d98b56c51d7f851fe6c3d9fe6462b9e7d692ee2b58", + "transactionIndex": 5 }, { "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, + "blockHash": "0x14057344c8a7b49711e327c53057a7aed3e722f6bdea5bec469377d35996c2a7", + "blockNumber": 17490359, "data": "0x", - "index": 14, + "index": 12, "topics": [ "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 + "transactionHash": "0x1162dc0ce123bf6bda9492d98b56c51d7f851fe6c3d9fe6462b9e7d692ee2b58", + "transactionIndex": 5 }, { "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, + "blockHash": "0x14057344c8a7b49711e327c53057a7aed3e722f6bdea5bec469377d35996c2a7", + "blockNumber": 17490359, "data": "0x0000000000000000000000000000000000000000000000000000000000000001", - "index": 15, - "topics": [ - "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" - ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 - }, - { - "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, - "data": "0x", - "index": 16, - "topics": [ - "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", - "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" - ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 - }, - { - "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, - "data": "0x0000000000000000000000000000000000000000000000000000000000000002", - "index": 17, - "topics": [ - "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" - ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 - }, - { - "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, - "data": "0x", - "index": 18, - "topics": [ - "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", - "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" - ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 - }, - { - "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, - "data": "0x0000000000000000000000000000000000000000000000000000000000000003", - "index": 19, - "topics": [ - "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" - ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 - }, - { - "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, - "data": "0x", - "index": 20, - "topics": [ - "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", - "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" - ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 - }, - { - "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, - "data": "0x0000000000000000000000000000000000000000000000000000000000000004", - "index": 21, + "index": 13, "topics": [ "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 + "transactionHash": "0x1162dc0ce123bf6bda9492d98b56c51d7f851fe6c3d9fe6462b9e7d692ee2b58", + "transactionIndex": 5 }, { "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0x6c8173c2d6e8776c388152015acd8c95a5970ca1cb1c3bbe98c242ec26b8b685", - "blockNumber": 17400324, + "blockHash": "0x14057344c8a7b49711e327c53057a7aed3e722f6bdea5bec469377d35996c2a7", + "blockNumber": 17490359, "data": "0x", - "index": 22, + "index": 14, "topics": [ "0x4383d976757d67ca920616be0b6430a681ea9d3dcce8d6d61d4603ca4a9bff63", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" ], - "transactionHash": "0xcf575643abae9783243852732ffa1122ed23c76ca61e685590731f5d4255f646", - "transactionIndex": 7 + "transactionHash": "0x1162dc0ce123bf6bda9492d98b56c51d7f851fe6c3d9fe6462b9e7d692ee2b58", + "transactionIndex": 5 } ], - "logsBloom": "0x0400000000001000000000000008020000000000000040000000000000000000008000000000000000000400004002000000000000000000000000000000000000a000100000200000000008040000000000000000010000000000000000000000000040020000200000000040000800000000000000000000000010000000000000000004000000000100040000000040000000000000000000000000000000004000800000000000000100000000002200000020000000100000000004000000000002000820000000000000001080010000010000000000000000000022000000000000008008000000000000000200000000008080000000000008000000", + "logsBloom": "0x00000000000010000000000000080008000000000000000000000000000000000080000000000000000004000042020000000000000000000000000000000000000000000000200000000000040001000000000000000000000002000000000000000000000000000000000040000000000000000000000000000000000000000000000004020000000100000000000000000000000000000000000000000000004000800000000000000000000000002200000020000000100000000004000000000002000800000000000000001080000000000000000000000000000002000000000000000008000000000000000200000000000080040000000008000000", "status": 1, "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" }, - "metadata": "{\"compiler\":{\"version\":\"0.8.23+commit.f704f362\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"deployer\",\"type\":\"address\"},{\"internalType\":\"contract ICTPublisher\",\"name\":\"publisher\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CONTROLLER\",\"outputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DEPLOYER\",\"outputs\":[{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"PUBLISHER\",\"outputs\":[{\"internalType\":\"contract ICTPublisher\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct CTAllowedPost[]\",\"name\":\"allowedPosts\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"hook\",\"type\":\"address\"},{\"internalType\":\"uint24\",\"name\":\"category\",\"type\":\"uint24\"},{\"internalType\":\"uint104\",\"name\":\"minimumPrice\",\"type\":\"uint104\"},{\"internalType\":\"uint32\",\"name\":\"minimumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maximumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"address[]\",\"name\":\"allowedAddresses\",\"type\":\"address[]\"}]},{\"internalType\":\"string\",\"name\":\"contractUri\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"deployProjectFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}]}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"controller\":\"The controller that projects are made from.\",\"deployer\":\"The deployer to launch Croptop projects from.\",\"publisher\":\"The croptop publisher.\"}},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"params\":{\"allowedPosts\":\"The type of posts that the project should allow.\",\"contractUri\":\"A link to the collection's metadata.\",\"name\":\"The name of the collection where posts will go.\",\"owner\":\"The address that'll own the project.\",\"projectUri\":\"The metadata URI containing project info.\",\"symbol\":\"The symbol of the collection where posts will go.\",\"terminalConfigurations\":\"The terminals that the network uses to accept payments through.\"},\"returns\":{\"projectId\":\"The ID of the newly created project.\"}},\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Make sure only mints can be received.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"CONTROLLER()\":{\"notice\":\"The controller that projects are made from.\"},\"DEPLOYER()\":{\"notice\":\"The deployer to launch Croptop recorded collections from.\"},\"PUBLISHER()\":{\"notice\":\"The Croptop publisher.\"},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"notice\":\"Deploy a simple project meant to receive posts from Croptop templates.\"}},\"version\":1}},\"settings\":{\"remappings\":[\"@arbitrum/=node_modules/@arbitrum/\",\"@bananapus/=node_modules/@bananapus/\",\"@chainlink/=node_modules/@chainlink/\",\"@croptop/core/=/\",\"@eth-optimism/=node_modules/@eth-optimism/\",\"@exhausted-pigeon/=node_modules/@exhausted-pigeon/\",\"@offchainlabs/=node_modules/@offchainlabs/\",\"@openzeppelin/=node_modules/@openzeppelin/\",\"@prb/=node_modules/@prb/\",\"@rev-net/=node_modules/@rev-net/\",\"@scroll-tech/=node_modules/@scroll-tech/\",\"@sphinx-labs/contracts/=node_modules/@sphinx-labs/contracts/contracts/foundry/\",\"@uniswap/=node_modules/@uniswap/\",\"base64-sol/=node_modules/base64-sol/\",\"ds-test/=lib/forge-std/lib/ds-test/src/\",\"forge-std/=lib/forge-std/src/\",\"hardhat/=node_modules/hardhat/\",\"solady/=node_modules/solady/\",\"solmate/=node_modules/solmate/\",\"sphinx/=lib/sphinx/packages/contracts/contracts/forge-std/src/\"],\"optimizer\":{\"enabled\":true,\"runs\":100000000},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"compilationTarget\":{\"src/CTDeployer.sol\":\"CTDeployer\"},\"evmVersion\":\"paris\",\"libraries\":{}},\"sources\":{\"node_modules/@bananapus/721-hook/src/interfaces/IJB721Hook.sol\":{\"keccak256\":\"0xc4c1b2da6354c37e67e4463ca3dc652daf98769a7dc1af5b6e8bc31dc11bdc69\",\"urls\":[\"bzz-raw://583553ab050c7a96dbee7ffe8436a0f345617a816331bba0fb3d1c1e77b39110\",\"dweb:/ipfs/QmXj783jhFVdGzFqpiCgGaNjnmDE2qNGEGE7HidhzGgrSR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol\":{\"keccak256\":\"0x1b17153dcb3901a8d9156976ffb20c1047849ad1ce94c3a1934f7ca012b45bb5\",\"urls\":[\"bzz-raw://e86b10609f4ff4279592a7c185c6b202c0ff2572fad40dcbcfab878dbc735daa\",\"dweb:/ipfs/QmSJE6yTqKuA94BKAixiEFRGUUYhwtngsYDW3VCfrbMzKP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookDeployer.sol\":{\"keccak256\":\"0xdcf34032c2a22a782b7121e777715766cce471e9e8186cb710865de674d646bf\",\"urls\":[\"bzz-raw://00c19707f9fd04b9393a2081a50d69a14ed37d4a8f689c39219da6379aaacb53\",\"dweb:/ipfs/QmPdJYKrEEJxVYYaoV5rVRhoBuxmBTEH7u3J2TZtom1Sof\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol\":{\"keccak256\":\"0x9ec3cdc330019db6a8aeefac543f43054814e5a8a8beed15d51729e94df9ece1\",\"urls\":[\"bzz-raw://20632197d5f24e72999e3af9106fafa3fecbe1bc58c4cebb7cb7cdd73d573959\",\"dweb:/ipfs/QmdpF5NpGzWfCXupszxTjMN616vEGZtsiW35vGmTTxycwX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookStore.sol\":{\"keccak256\":\"0x6f3acee1130717bf1ac5c513cb167a8f121a64c047b505e9aced2b23793b79d7\",\"urls\":[\"bzz-raw://9f4dfe3be9e21c8b5446e9d37e699071f9df257a3c7a2fb8a8791e062617acbc\",\"dweb:/ipfs/QmarDks3DcMyHPVsKdj5qpma5ZBMzH8ti92MY38K76hvSA\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol\":{\"keccak256\":\"0xfa599167098f4459320ec4141a98a17b2dfffbce422baa27d8b4e4530f61ece1\",\"urls\":[\"bzz-raw://8b758b161f4c7b520b2c34b4d91e585e961b8f4ca278eebb91d791f7f2f45140\",\"dweb:/ipfs/QmcD9DF7NJ9QykQpT4KPzm4bs3fkjzukdAUWwdU6Atfw85\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol\":{\"keccak256\":\"0xff362fcd46992e56996e1b162b129a1d03ca2342a482421f279bd930b7af79dd\",\"urls\":[\"bzz-raw://56a52c0d4461fd1b278789cd31ccc77b5eab9a0d7e2fab5074bae9c8a79d0cb1\",\"dweb:/ipfs/QmagorkFXB4rEq5rfLcoZHu6jtjcMicMBPfVqMQT86xZoB\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721Tier.sol\":{\"keccak256\":\"0x99232aa73d5715977332dc7c93b03552a93259e59ae00e86b4ddc200f06adaf1\",\"urls\":[\"bzz-raw://721c0cf10a29fa11677718faafb3a2ecfcb4fbe4e1c09e70a7fac681c80fcc94\",\"dweb:/ipfs/QmSUR77E9PqnpB5kBcKNz2CGBjG9XL9FH57RWVYu3Q7GMR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TierConfig.sol\":{\"keccak256\":\"0x86e54a0de4deab9d105bf276586aebe256188b193e83eb7a6f6f93e4a29ae9c5\",\"urls\":[\"bzz-raw://04bfcc07d452c26dfc50d3a5eb62df4b3b81e063defd752e0aa5ed049a78eef4\",\"dweb:/ipfs/QmWd5nJHUvZPHxJXkrYCboXaqdtiWWkQG26sNM6qkJuAgD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersHookFlags.sol\":{\"keccak256\":\"0x283d8429f31bd58875c056515aa42abd09c95362bd929e85cfc44a0d92585766\",\"urls\":[\"bzz-raw://9a580b89fe99d9f8e930c58a4d0d63a5ff7c01c79d210af01373d066c9e72ed6\",\"dweb:/ipfs/QmdY1eSGSoTjv4KSdsG4Tm5CzJN6iqk3qTRga5ZWNbejRz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersMintReservesConfig.sol\":{\"keccak256\":\"0x86fe586a05e6d4bc6fab9b68996a7f4b74c5362ca6f24b9d8057ed7e4cd1c5ac\",\"urls\":[\"bzz-raw://0915f17d1f958ab1fe6b214d99ed62f1f858684898c803f1a8a6a557472dd140\",\"dweb:/ipfs/QmUhdnSV8UzkgvbtkYEKHrpyDEmc2aJxW5HQ1gucuxxu5A\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersSetDiscountPercentConfig.sol\":{\"keccak256\":\"0x4672eacb6b0cda5e6f5f72ddb91463c52fb90b4df421053e3b40024f19a59954\",\"urls\":[\"bzz-raw://9d8e3a0b35d6b2a6ec66527594263400189b6c766bfd6943c83704380a989aec\",\"dweb:/ipfs/QmUE7NhFWsxjFRzTuRyHJ7oRx3JXD9CnG83t29PjGAhwPR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBDeploy721TiersHookConfig.sol\":{\"keccak256\":\"0x0ce457736946394772afe54d575b68a74269cbf37a250de2d27dca6d9dd45005\",\"urls\":[\"bzz-raw://2010a8f6e19354038d3906ddb174f34464c5f341103313a5c4d628aa7732d5a8\",\"dweb:/ipfs/QmU9m18oWtYNV7UHLcW9kdwE3uzoQuGBe6sASvQTk8GZRL\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchProjectConfig.sol\":{\"keccak256\":\"0x0a8f87072dd6e5dd7c5cd5af7153172275de7e85625aa4a97da4fed65ad5b029\",\"urls\":[\"bzz-raw://b1d230835bf8fa17e8308d5d2ce4c820c4a719f451a65477f75956e100984047\",\"dweb:/ipfs/QmX6BwoYNJx1SssBLcBoPJBsg2Hv6ZP2uErXUvoMrAaQ71\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchRulesetsConfig.sol\":{\"keccak256\":\"0x0088bc7133e3fae1944247370a4eec227aeae8b371534e1d54439499644c0ede\",\"urls\":[\"bzz-raw://31847d92e9eb5e3125f07c23a651c0972e1784f748c4ce9d0c66853ee892c690\",\"dweb:/ipfs/QmRmoXg2MrkUFkMkgKvU7igkHQjhStbbc6CeiHkLCYAn7P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetConfig.sol\":{\"keccak256\":\"0x06fdbc5c40750b8d81e4c079f86a96f5ce922a0ddbb81ddc5a044aa166723f59\",\"urls\":[\"bzz-raw://b810a5768501951e08c46f1907a7f561a49c4e16f339f1679a493fcddd30cc50\",\"dweb:/ipfs/QmfCF85EAdQCnsixXCdkKb5Xz2bL9dqAoDhmiR1QoBo81P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetMetadata.sol\":{\"keccak256\":\"0x087280b3a959933c68ad19acbf07d80f9bbf632d902986c2ff624b6c31a6eeeb\",\"urls\":[\"bzz-raw://a2ddf9483f89b8a9012bc7714db4547b68a0df5fe3bf953e190d2021377f9811\",\"dweb:/ipfs/QmZcs1fuufGwWYy4fW3puX7ZRrribMMzEyEEL7WVCnrMer\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBQueueRulesetsConfig.sol\":{\"keccak256\":\"0x3ad05bfa31a90070eb4a026a13d508f9a68ca2474c3737bcda97a07307ffa554\",\"urls\":[\"bzz-raw://357f0193da0840e4b012ff1f97c65c8b6f5fea39e323a3777baf2b0625491f12\",\"dweb:/ipfs/QmZkJb8MuZ3wimiV6kry4RMp9ZkUFQA9yhfJDVUWTBWFcq\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/enums/JBApprovalStatus.sol\":{\"keccak256\":\"0x61c69b6bac7d24b566d87cda23a77e4ca9cdb87200b106aba8534cb9a0973e33\",\"urls\":[\"bzz-raw://6a9ca7249de76f77a8252eefe6bd1b63d47952f25a2acfa2c8db967cdff4470c\",\"dweb:/ipfs/QmaxSxptRQNj8bNy96EreENmrnRWdKmhyihBcxyWzBX5BN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBController.sol\":{\"keccak256\":\"0xf577428966a4db4ca17fb73abf2ff2e21cc0e231df2d7247bf410f926d6cb5f7\",\"urls\":[\"bzz-raw://7c1d847382f731b8c464b55ead0ed5c517aa3fa606aaf78b7881aab18108d504\",\"dweb:/ipfs/QmXW3DpPgjYw33A8bMxJFRVZRYjCnWTp28M8sSdPHbDq7E\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectory.sol\":{\"keccak256\":\"0xcb97db460d2948a7f51c660fe0d1b1749047a419027711c476b86ad3573534c5\",\"urls\":[\"bzz-raw://a909c7a3d471054537894dca827e6e018e92ac25299b43026e5b1e335ec4de68\",\"dweb:/ipfs/QmU1GT3F8PNMjSiPPP5cSLLofefHYFJXnywMCdqqM9xUeh\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectoryAccessControl.sol\":{\"keccak256\":\"0x1ea768919979d9f625920c05a5e633739febc822ce14b1e4724d739b19c10fb8\",\"urls\":[\"bzz-raw://7c5391a510bd610a97978245b7306d8d21c79d7c45c15f590ba9b603ea751154\",\"dweb:/ipfs/QmPSJvVWswqzv3bVq422UhA2BybMsiHoYFWGPp5Jh6Xs6a\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBFundAccessLimits.sol\":{\"keccak256\":\"0xfd8ea4cffd289e7fef6e53b5c8983eb6b941de306517f40c047048d3a8a2ca08\",\"urls\":[\"bzz-raw://2765cdee206f8b1b53874448e2481db001cd3706753190cfc9381318c7a7c41c\",\"dweb:/ipfs/QmQ5UYSadtzrb7BcTR93KnAYKXawdyDUG5HjjASV1zbys5\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPayHook.sol\":{\"keccak256\":\"0x9438866782c652c2942f4d114e35f393cd3c8b0334abce8387eed90bca35e8b2\",\"urls\":[\"bzz-raw://cfd99daf57213f92325aad7d7d16e98476d38e870470e95ba01e3ae3cdecc95d\",\"dweb:/ipfs/QmUKKAVGf7ki8BHksr99tFcRW8APveeB5tNH63ctTbbCW8\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPriceFeed.sol\":{\"keccak256\":\"0x4bd84c0f1a5d4729ed709bcddd43f4c50ec4a165ece79780af8dce482ed07d4a\",\"urls\":[\"bzz-raw://62bac4bfb6982fb002f620c77e5c445e62d50241a5aa64a07e51d929f5a42180\",\"dweb:/ipfs/QmWgJUDreVY2BuMX38a1iUUR5kNbMwGnKG3VvurB7oZtuM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPrices.sol\":{\"keccak256\":\"0xb4d5244daa52aafab0c9b8806b7f973afa6a3b298add5966d586d27b78424cfb\",\"urls\":[\"bzz-raw://a819f74455aaa4f679ded378424702f3992608a640d7f943b19938eb4ff711da\",\"dweb:/ipfs/QmSMGvVTsMW3L5YSUyXTKoEsgNpGEutnq4frEZHuDdeDvz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjectUriRegistry.sol\":{\"keccak256\":\"0xc9ab647179d7d0c857fdd881d6ce96f06254739440ed08e85a1c2042218f7c7d\",\"urls\":[\"bzz-raw://8529368f30c98c8d5a69acdbe4ac79e3eeb4afa5a9cd278325c5f2184ef3d50f\",\"dweb:/ipfs/QmfUaozYiAGt1UwBDUEZvon1tEBS5sLPzqpN9dNdjQotPN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjects.sol\":{\"keccak256\":\"0x4ae42a9cc29b517b26d2b9b635deb82c16696b777deeca92dfcad33b0f81c0a0\",\"urls\":[\"bzz-raw://1dcbd860e7d7f05232d90c5e9cfd3d01e2ce986ffcdb053473d8a4d387b1a48a\",\"dweb:/ipfs/QmWKWoSJJbVWDumbnzXJBJyXmAacgC97bxMtchh8te41bn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesetApprovalHook.sol\":{\"keccak256\":\"0x592e95d159494421c6b1bcb362d0cee1df0132921697351304e9cd7af4fbd386\",\"urls\":[\"bzz-raw://5bebfd5fa67c1b6ea16fa2e76e9520e9dfe52a579f48dd94d0c2ec45f78ad178\",\"dweb:/ipfs/QmRUawEGtfYoYSHmHELGhvJoWuMsxLPKtqAXgsrb7fJboP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesets.sol\":{\"keccak256\":\"0x29b56a91e8cd4d3e718e18cd934eccbc22c668d08dc26adb43c958722497d3ab\",\"urls\":[\"bzz-raw://7ae1a723eaf16809b9bd73cd235985801aff85283976be342416fa301c3b4793\",\"dweb:/ipfs/QmZYSY7C9dPvR5EnT8YCjVSy842dBVP3wZdYQ71wyPkx2F\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplitHook.sol\":{\"keccak256\":\"0xeb8dfac7a4b81897a1c3b5d0d853a406bcff33720fb187d5ca5bb3dcc0ba3a12\",\"urls\":[\"bzz-raw://36aaeef6107cfe5b0127e063ea215aac7200f8af02e28a48e61111abd3254688\",\"dweb:/ipfs/QmQ8yQANXnhQCAWBGKsKCDsJ3A8hnTKNg5tyo79GfWXTcV\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplits.sol\":{\"keccak256\":\"0x424e6d1189b9ba7a5d441e7675ae09ff893c13c62b9ddde4dd6bc2690e96c6f3\",\"urls\":[\"bzz-raw://7e30ed7ab1daf20ff324aacfef7150a243b5db496eceaf032c7012ccb3c4227d\",\"dweb:/ipfs/QmRj5EZKmDjJy8tpvKbpz8vPSKHR5C9Q5ENe7oSLij4H8M\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTerminal.sol\":{\"keccak256\":\"0xe440530f1d0cc16578981e1d2e4e13674360c677d19a74a4b08f9f7268c70aee\",\"urls\":[\"bzz-raw://ddea4aeaf523f48a1364a02d2ccb75f3dfd8a2b9af465964e9adf3ce53f4196a\",\"dweb:/ipfs/QmVWhN1Nn9khUN8ctAgh2Ypo2vnFBgDHtDw6S232A6RkFw\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBToken.sol\":{\"keccak256\":\"0xd33757cd3da65a9d66404b7e6ddb7a27b4902885a3498b9db1673c218e9fab2d\",\"urls\":[\"bzz-raw://de28759920dab1db6cfcb4ff2ffae76491be371b791a2a0ec054ff17653872dc\",\"dweb:/ipfs/QmPXnhdxbgoV4dBRJCi9siQYRfrvcJLDtY1rp3H2vtU1Cz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokenUriResolver.sol\":{\"keccak256\":\"0xfa5cb00dcd6085d1ef912d071fe73c63f9478a2cd0f9d8bddaf659b6af2d0967\",\"urls\":[\"bzz-raw://282e4e7c342d65f77cde0e9a08fcaf20ef5cf379c7a48b639842c0ffd0b2afb8\",\"dweb:/ipfs/QmbnN3PEQeZaXdPLT75V1J79kMg7KqSMru37RHrL3z8Yf2\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokens.sol\":{\"keccak256\":\"0x1348b416ebf501409acc9970d46be89ffd076566001ceff9b96fce1b0b2c405d\",\"urls\":[\"bzz-raw://74327019f5174345afed10d9a60caa9ef908382e131882c27588b13be8364b36\",\"dweb:/ipfs/QmZAqB6hFSymTEbjqHWgE4t9NRose9AJh4etGyWnvDkhJt\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/libraries/JBConstants.sol\":{\"keccak256\":\"0x822bef715c9d5803208a2e02f8d14e0ffdb1fb2ea84698c30fd801103be4a3d2\",\"urls\":[\"bzz-raw://476c87d74e31cd43419cce01551158993c311ac47ba5fad5768e26054b3c8a91\",\"dweb:/ipfs/QmdpxoGU6suZAm9FS7R47AwSmHEFjwmf6v56WrfZM4QkJc\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAccountingContext.sol\":{\"keccak256\":\"0x9c47e048a719f784f601df69a583505432217b9868a0244876d277f84dd1ebdf\",\"urls\":[\"bzz-raw://8565f194b87914da9a02af2e760ae2ed2a9d185c6f11229f7035140776d2fec9\",\"dweb:/ipfs/QmPs2fic8W3F5e5zNRwmGmJFjb3JWGPWJ3YUe5o82nQgEn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAfterPayRecordedContext.sol\":{\"keccak256\":\"0xd26c3a774ff38be79064085970454fe2603a23a638c76270d5b1b3829206c3e8\",\"urls\":[\"bzz-raw://3b55dbe3bf1ef625b7ca04efab3de35406e6041d5b3d82c7265469c500e2b702\",\"dweb:/ipfs/QmUdBDo4Lt3mcsFcsXT2mqq3czFwZjQJFPLM89YA2VtD7k\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBCurrencyAmount.sol\":{\"keccak256\":\"0x7f321bbcbd13abfbc8f0d08a5adaaf8ef312db5bb899012fcffb6170fbb962a9\",\"urls\":[\"bzz-raw://bf9301ef1dbb3abda7b492585377617508ba048c6170f21a5e7d2b3c034eb384\",\"dweb:/ipfs/QmcetEFxSYLLNSZzPBpNn3Fc8sFcrFE8A8h12ZSj2tLgxD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBFundAccessLimitGroup.sol\":{\"keccak256\":\"0x9fdaa8d017b72da25f583700a444a86849df053f7fb8eac874ec5139bcf651e5\",\"urls\":[\"bzz-raw://c8e44c49ee444a98424a0dbeb6897a76a0bf00d88a613f62ac2012afdac754ee\",\"dweb:/ipfs/QmdYkAiRi5bXM1YYNkc7BiqimHSFodMGn1cjHR5hcpm4xH\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRuleset.sol\":{\"keccak256\":\"0x03ad7bd257d4ac55ecc42b85156dce1c70eec8572dbf8feb093c033912f305e7\",\"urls\":[\"bzz-raw://9665b4c018cd469f94bec4471222cc9e5fd58ac421a0959f70e72618fe37d55b\",\"dweb:/ipfs/QmSUf6HQv2Ckcoy5tSH1UPdD8vDMerfK29G8kaxmxB3Kow\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetConfig.sol\":{\"keccak256\":\"0x7a57ed3d73bd9457d8e1fb40f5204c364df87cbfdbf42412d5bbc08beabb49c9\",\"urls\":[\"bzz-raw://8b9a83916ee67d32b5f434b35b171c6122bbc4efeaa4fabb8dec2ca4e9e32c6e\",\"dweb:/ipfs/QmNquzUQn6ZvE2wBcMCgru3resV9UNvBWPPetyDChoh8vM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetMetadata.sol\":{\"keccak256\":\"0x7f49fe89eefe848e6af12aa452bd882430ff35e9dd44e9ff3d7be6911496486c\",\"urls\":[\"bzz-raw://136f3baeb71f8ac1c2721eb94b1d469d35cf3fba82f9138760dde6d451d052ef\",\"dweb:/ipfs/QmVeBaYMS9K3rPfneKiVYnFXbp3X8qxrw4qhN4PmuYHppz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetWithMetadata.sol\":{\"keccak256\":\"0x1bcfadf20488f6df65227f8d4d0fbf9b7539456a2389567f7fe3900d23289bc3\",\"urls\":[\"bzz-raw://0a15c399a71e5373f8c0484c6d6b83521eda31e063a2c53e4c5cec4e74550343\",\"dweb:/ipfs/QmQwi8zkjoTVXbK89NeETYimWCacTrNsesJdpLSvGdqMPX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplit.sol\":{\"keccak256\":\"0x0e1351e80cf9967caee90094712a4fc884a83f07df23a844d8cb33ebcd00721e\",\"urls\":[\"bzz-raw://19d5793c08834f2ec1d6942bd43d05042b0ecc351a57235d748a8f2ff74b6638\",\"dweb:/ipfs/QmUWjyNg7x62KsvMwAzNdpmwqCo5qK5ip9pLdshj9B2Kbf\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitGroup.sol\":{\"keccak256\":\"0x8dc98fa9e730bee8bcc0a8acf1bc4db1c9b0edf307d969c9c9caa4d6b8d856d9\",\"urls\":[\"bzz-raw://66f4306e0e69c82033927952564fd617e7c4b29aa8b165d5b53a0ebe3109ea12\",\"dweb:/ipfs/QmQqN1u7FHAdEtEZNRcKvZwYtXEQVQnLd6FMzHESP7wDtx\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitHookContext.sol\":{\"keccak256\":\"0x1cef82bf434f91d518092ea7e57db4a72ce7654f48a7db9bf44882900b6b6623\",\"urls\":[\"bzz-raw://cc5012008ab7e74cf766fe1c202a23e3a73365356bcf1e0b04ec01baf21b204b\",\"dweb:/ipfs/QmSwJvd6Yrg9XZMhjquBcak5sfUswbR5nPEuJBfpjM54VT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTerminalConfig.sol\":{\"keccak256\":\"0x9e31505080d3754b6d7db96095b0545930ef6dbc035b91fcc32fdc76a0e7c2a5\",\"urls\":[\"bzz-raw://f7702ab33a1b713c37e5397a55d8ef089289f4da8034cfe9622cbc69a98c47de\",\"dweb:/ipfs/QmXyiXps4aJyiM7vtDC373QUoqwB4DMETaZzC5cZPJKaAK\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTokenAmount.sol\":{\"keccak256\":\"0xc61593d33d5ec30e695d382948a1b944d01e29a8f2bfd29f75ecebcdbc7816de\",\"urls\":[\"bzz-raw://8992c1e5fca0c2342ecc0e734dfba6a2a752e4c29184784931d0971e44305051\",\"dweb:/ipfs/QmYNcaW3qeCkgAExUaFTq238fgfJuoYCTwjCn7jm94U4dJ\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5ef46daa3b58ef2702279d514780316efaa952915ee1aa3396f041ee2982b0b4\",\"urls\":[\"bzz-raw://2f8f2a76e23b02fc69e8cd24c3cb47da6c7af3a2d6c3a382f8ac25c6e094ade7\",\"dweb:/ipfs/QmPV4ZS4tPVv4mTCf9ejyZ1ai57EEibDRj7mN2ARDCLV5n\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0x7f7a26306c79a65fb8b3b6c757cd74660c532cd8a02e165488e30027dd34ca49\",\"urls\":[\"bzz-raw://d01e0b2b837ee2f628545e54d8715b49c7ef2befd08356c2e7f6c50dde8a1c22\",\"dweb:/ipfs/QmWBAn6y2D1xgftci97Z3qR9tQnkvwQpYwFwkTvDMvqU4i\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"],\"license\":\"MIT\"},\"src/CTDeployer.sol\":{\"keccak256\":\"0x5bcf3bbdacbcade3a43678d92238c65bbdb84ddf5945311b2155f63052bbff46\",\"urls\":[\"bzz-raw://dbc4e2e3e75d52e42f980924abab04c4f160d542d1f12c59dce13435b7b2718e\",\"dweb:/ipfs/Qmb4jyz2Y76kVZShJVsUzyrT8dPp8Yo7xiRADByB5GA77o\"],\"license\":\"MIT\"},\"src/interfaces/ICTDeployer.sol\":{\"keccak256\":\"0x23c4ec623f382c88a7061e11b7e4a32f604aee92788256a77705532c9bc62d82\",\"urls\":[\"bzz-raw://8bf22d2fefd98e2d28191860315d45badd0d13df446de32e3b660001c2862c21\",\"dweb:/ipfs/QmcxVwo45WobQ3JwAhpjmvkDcivyqVnw7kFoaimDY51tj4\"],\"license\":\"MIT\"},\"src/interfaces/ICTPublisher.sol\":{\"keccak256\":\"0x8fab84f363d0a7e7707eb93979b43f5e129b7d9d8221d6d240107fdf3d46da5c\",\"urls\":[\"bzz-raw://016775346d46cb4358eb2c0e29bb6ccc543b5f37cef916e98bc7a079cbd9e894\",\"dweb:/ipfs/Qmdeu2FWQNsd9vC7wZFpryESU6M6kq99EwbBUkg4HoogQ7\"],\"license\":\"MIT\"},\"src/structs/CTAllowedPost.sol\":{\"keccak256\":\"0x1cab9579ed19fea4d490b1de827fd123a8cc7ababd73ed5421351a6f7142a371\",\"urls\":[\"bzz-raw://00695b12ade810d017427a7cf20856dc326bbedcf4548ed28e81a33f09b28ad8\",\"dweb:/ipfs/QmP3UPM4xyiSUnBhkThyVp1Ww8QfqfN7rk3fPx4Gu5Whsm\"],\"license\":\"MIT\"},\"src/structs/CTPost.sol\":{\"keccak256\":\"0xc4d67fc9a0323a2a923521f2fb3042bde046cb8c78fc69d928804ab8f3987038\",\"urls\":[\"bzz-raw://fb4d0a02ada8e751cbd7061f8d7b48705a9442339510232f51595ada0e73612d\",\"dweb:/ipfs/QmbFd4CeMhcY86Ze4izYYdK2xB7tQuwdHxdP7aB5zxy8ka\"],\"license\":\"MIT\"}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.8.23+commit.f704f362\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"deployer\",\"type\":\"address\"},{\"internalType\":\"contract ICTPublisher\",\"name\":\"publisher\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CONTROLLER\",\"outputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DEPLOYER\",\"outputs\":[{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"PUBLISHER\",\"outputs\":[{\"internalType\":\"contract ICTPublisher\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct CTDeployerAllowedPost[]\",\"name\":\"allowedPosts\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint24\",\"name\":\"category\",\"type\":\"uint24\"},{\"internalType\":\"uint104\",\"name\":\"minimumPrice\",\"type\":\"uint104\"},{\"internalType\":\"uint32\",\"name\":\"minimumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maximumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"address[]\",\"name\":\"allowedAddresses\",\"type\":\"address[]\"}]},{\"internalType\":\"string\",\"name\":\"contractUri\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"deployProjectFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"contract IJB721TiersHook\",\"name\":\"hook\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}]}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"controller\":\"The controller that projects are made from.\",\"deployer\":\"The deployer to launch Croptop projects from.\",\"publisher\":\"The croptop publisher.\"}},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"params\":{\"allowedPosts\":\"The type of posts that the project should allow.\",\"contractUri\":\"A link to the collection's metadata.\",\"name\":\"The name of the collection where posts will go.\",\"owner\":\"The address that'll own the project.\",\"projectUri\":\"The metadata URI containing project info.\",\"symbol\":\"The symbol of the collection where posts will go.\",\"terminalConfigurations\":\"The terminals that the network uses to accept payments through.\"},\"returns\":{\"hook\":\"The hook that was created.\",\"projectId\":\"The ID of the newly created project.\"}},\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Make sure only mints can be received.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"CONTROLLER()\":{\"notice\":\"The controller that projects are made from.\"},\"DEPLOYER()\":{\"notice\":\"The deployer to launch Croptop recorded collections from.\"},\"PUBLISHER()\":{\"notice\":\"The Croptop publisher.\"},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"notice\":\"Deploy a simple project meant to receive posts from Croptop templates.\"}},\"version\":1}},\"settings\":{\"remappings\":[\"@arbitrum/=node_modules/@arbitrum/\",\"@bananapus/=node_modules/@bananapus/\",\"@chainlink/=node_modules/@chainlink/\",\"@croptop/core/=/\",\"@eth-optimism/=node_modules/@eth-optimism/\",\"@exhausted-pigeon/=node_modules/@exhausted-pigeon/\",\"@offchainlabs/=node_modules/@offchainlabs/\",\"@openzeppelin/=node_modules/@openzeppelin/\",\"@prb/=node_modules/@prb/\",\"@rev-net/=node_modules/@rev-net/\",\"@scroll-tech/=node_modules/@scroll-tech/\",\"@sphinx-labs/contracts/=node_modules/@sphinx-labs/contracts/contracts/foundry/\",\"@uniswap/=node_modules/@uniswap/\",\"base64-sol/=node_modules/base64-sol/\",\"ds-test/=lib/forge-std/lib/ds-test/src/\",\"forge-std/=lib/forge-std/src/\",\"hardhat/=node_modules/hardhat/\",\"solady/=node_modules/solady/\",\"solmate/=node_modules/solmate/\",\"sphinx/=lib/sphinx/packages/contracts/contracts/forge-std/src/\"],\"optimizer\":{\"enabled\":true,\"runs\":100000000},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"compilationTarget\":{\"src/CTDeployer.sol\":\"CTDeployer\"},\"evmVersion\":\"paris\",\"libraries\":{}},\"sources\":{\"node_modules/@bananapus/721-hook/src/interfaces/IJB721Hook.sol\":{\"keccak256\":\"0xc4c1b2da6354c37e67e4463ca3dc652daf98769a7dc1af5b6e8bc31dc11bdc69\",\"urls\":[\"bzz-raw://583553ab050c7a96dbee7ffe8436a0f345617a816331bba0fb3d1c1e77b39110\",\"dweb:/ipfs/QmXj783jhFVdGzFqpiCgGaNjnmDE2qNGEGE7HidhzGgrSR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol\":{\"keccak256\":\"0x1b17153dcb3901a8d9156976ffb20c1047849ad1ce94c3a1934f7ca012b45bb5\",\"urls\":[\"bzz-raw://e86b10609f4ff4279592a7c185c6b202c0ff2572fad40dcbcfab878dbc735daa\",\"dweb:/ipfs/QmSJE6yTqKuA94BKAixiEFRGUUYhwtngsYDW3VCfrbMzKP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookDeployer.sol\":{\"keccak256\":\"0xdcf34032c2a22a782b7121e777715766cce471e9e8186cb710865de674d646bf\",\"urls\":[\"bzz-raw://00c19707f9fd04b9393a2081a50d69a14ed37d4a8f689c39219da6379aaacb53\",\"dweb:/ipfs/QmPdJYKrEEJxVYYaoV5rVRhoBuxmBTEH7u3J2TZtom1Sof\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol\":{\"keccak256\":\"0xffcee695bbdf4960b99b905b966ba6225a1909e65397c1f32389e77ec49207d0\",\"urls\":[\"bzz-raw://7aadbb2a046524b164e0886b9deb049823e5b1c92efcf2ad7fd8e22d5a746d51\",\"dweb:/ipfs/QmbhafFJmJ6MUtrSzHqLnshz1PNUz3rgcvB8zif1p8sf7d\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookStore.sol\":{\"keccak256\":\"0x6f3acee1130717bf1ac5c513cb167a8f121a64c047b505e9aced2b23793b79d7\",\"urls\":[\"bzz-raw://9f4dfe3be9e21c8b5446e9d37e699071f9df257a3c7a2fb8a8791e062617acbc\",\"dweb:/ipfs/QmarDks3DcMyHPVsKdj5qpma5ZBMzH8ti92MY38K76hvSA\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol\":{\"keccak256\":\"0xfa599167098f4459320ec4141a98a17b2dfffbce422baa27d8b4e4530f61ece1\",\"urls\":[\"bzz-raw://8b758b161f4c7b520b2c34b4d91e585e961b8f4ca278eebb91d791f7f2f45140\",\"dweb:/ipfs/QmcD9DF7NJ9QykQpT4KPzm4bs3fkjzukdAUWwdU6Atfw85\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol\":{\"keccak256\":\"0xff362fcd46992e56996e1b162b129a1d03ca2342a482421f279bd930b7af79dd\",\"urls\":[\"bzz-raw://56a52c0d4461fd1b278789cd31ccc77b5eab9a0d7e2fab5074bae9c8a79d0cb1\",\"dweb:/ipfs/QmagorkFXB4rEq5rfLcoZHu6jtjcMicMBPfVqMQT86xZoB\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721Tier.sol\":{\"keccak256\":\"0x99232aa73d5715977332dc7c93b03552a93259e59ae00e86b4ddc200f06adaf1\",\"urls\":[\"bzz-raw://721c0cf10a29fa11677718faafb3a2ecfcb4fbe4e1c09e70a7fac681c80fcc94\",\"dweb:/ipfs/QmSUR77E9PqnpB5kBcKNz2CGBjG9XL9FH57RWVYu3Q7GMR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TierConfig.sol\":{\"keccak256\":\"0x86e54a0de4deab9d105bf276586aebe256188b193e83eb7a6f6f93e4a29ae9c5\",\"urls\":[\"bzz-raw://04bfcc07d452c26dfc50d3a5eb62df4b3b81e063defd752e0aa5ed049a78eef4\",\"dweb:/ipfs/QmWd5nJHUvZPHxJXkrYCboXaqdtiWWkQG26sNM6qkJuAgD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersHookFlags.sol\":{\"keccak256\":\"0x283d8429f31bd58875c056515aa42abd09c95362bd929e85cfc44a0d92585766\",\"urls\":[\"bzz-raw://9a580b89fe99d9f8e930c58a4d0d63a5ff7c01c79d210af01373d066c9e72ed6\",\"dweb:/ipfs/QmdY1eSGSoTjv4KSdsG4Tm5CzJN6iqk3qTRga5ZWNbejRz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersMintReservesConfig.sol\":{\"keccak256\":\"0x86fe586a05e6d4bc6fab9b68996a7f4b74c5362ca6f24b9d8057ed7e4cd1c5ac\",\"urls\":[\"bzz-raw://0915f17d1f958ab1fe6b214d99ed62f1f858684898c803f1a8a6a557472dd140\",\"dweb:/ipfs/QmUhdnSV8UzkgvbtkYEKHrpyDEmc2aJxW5HQ1gucuxxu5A\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersSetDiscountPercentConfig.sol\":{\"keccak256\":\"0x4672eacb6b0cda5e6f5f72ddb91463c52fb90b4df421053e3b40024f19a59954\",\"urls\":[\"bzz-raw://9d8e3a0b35d6b2a6ec66527594263400189b6c766bfd6943c83704380a989aec\",\"dweb:/ipfs/QmUE7NhFWsxjFRzTuRyHJ7oRx3JXD9CnG83t29PjGAhwPR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBDeploy721TiersHookConfig.sol\":{\"keccak256\":\"0x0ce457736946394772afe54d575b68a74269cbf37a250de2d27dca6d9dd45005\",\"urls\":[\"bzz-raw://2010a8f6e19354038d3906ddb174f34464c5f341103313a5c4d628aa7732d5a8\",\"dweb:/ipfs/QmU9m18oWtYNV7UHLcW9kdwE3uzoQuGBe6sASvQTk8GZRL\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchProjectConfig.sol\":{\"keccak256\":\"0x0a8f87072dd6e5dd7c5cd5af7153172275de7e85625aa4a97da4fed65ad5b029\",\"urls\":[\"bzz-raw://b1d230835bf8fa17e8308d5d2ce4c820c4a719f451a65477f75956e100984047\",\"dweb:/ipfs/QmX6BwoYNJx1SssBLcBoPJBsg2Hv6ZP2uErXUvoMrAaQ71\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchRulesetsConfig.sol\":{\"keccak256\":\"0x0088bc7133e3fae1944247370a4eec227aeae8b371534e1d54439499644c0ede\",\"urls\":[\"bzz-raw://31847d92e9eb5e3125f07c23a651c0972e1784f748c4ce9d0c66853ee892c690\",\"dweb:/ipfs/QmRmoXg2MrkUFkMkgKvU7igkHQjhStbbc6CeiHkLCYAn7P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetConfig.sol\":{\"keccak256\":\"0x06fdbc5c40750b8d81e4c079f86a96f5ce922a0ddbb81ddc5a044aa166723f59\",\"urls\":[\"bzz-raw://b810a5768501951e08c46f1907a7f561a49c4e16f339f1679a493fcddd30cc50\",\"dweb:/ipfs/QmfCF85EAdQCnsixXCdkKb5Xz2bL9dqAoDhmiR1QoBo81P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetMetadata.sol\":{\"keccak256\":\"0x087280b3a959933c68ad19acbf07d80f9bbf632d902986c2ff624b6c31a6eeeb\",\"urls\":[\"bzz-raw://a2ddf9483f89b8a9012bc7714db4547b68a0df5fe3bf953e190d2021377f9811\",\"dweb:/ipfs/QmZcs1fuufGwWYy4fW3puX7ZRrribMMzEyEEL7WVCnrMer\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBQueueRulesetsConfig.sol\":{\"keccak256\":\"0x3ad05bfa31a90070eb4a026a13d508f9a68ca2474c3737bcda97a07307ffa554\",\"urls\":[\"bzz-raw://357f0193da0840e4b012ff1f97c65c8b6f5fea39e323a3777baf2b0625491f12\",\"dweb:/ipfs/QmZkJb8MuZ3wimiV6kry4RMp9ZkUFQA9yhfJDVUWTBWFcq\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/enums/JBApprovalStatus.sol\":{\"keccak256\":\"0x61c69b6bac7d24b566d87cda23a77e4ca9cdb87200b106aba8534cb9a0973e33\",\"urls\":[\"bzz-raw://6a9ca7249de76f77a8252eefe6bd1b63d47952f25a2acfa2c8db967cdff4470c\",\"dweb:/ipfs/QmaxSxptRQNj8bNy96EreENmrnRWdKmhyihBcxyWzBX5BN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBController.sol\":{\"keccak256\":\"0xf577428966a4db4ca17fb73abf2ff2e21cc0e231df2d7247bf410f926d6cb5f7\",\"urls\":[\"bzz-raw://7c1d847382f731b8c464b55ead0ed5c517aa3fa606aaf78b7881aab18108d504\",\"dweb:/ipfs/QmXW3DpPgjYw33A8bMxJFRVZRYjCnWTp28M8sSdPHbDq7E\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectory.sol\":{\"keccak256\":\"0xcb97db460d2948a7f51c660fe0d1b1749047a419027711c476b86ad3573534c5\",\"urls\":[\"bzz-raw://a909c7a3d471054537894dca827e6e018e92ac25299b43026e5b1e335ec4de68\",\"dweb:/ipfs/QmU1GT3F8PNMjSiPPP5cSLLofefHYFJXnywMCdqqM9xUeh\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectoryAccessControl.sol\":{\"keccak256\":\"0x1ea768919979d9f625920c05a5e633739febc822ce14b1e4724d739b19c10fb8\",\"urls\":[\"bzz-raw://7c5391a510bd610a97978245b7306d8d21c79d7c45c15f590ba9b603ea751154\",\"dweb:/ipfs/QmPSJvVWswqzv3bVq422UhA2BybMsiHoYFWGPp5Jh6Xs6a\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBFundAccessLimits.sol\":{\"keccak256\":\"0xfd8ea4cffd289e7fef6e53b5c8983eb6b941de306517f40c047048d3a8a2ca08\",\"urls\":[\"bzz-raw://2765cdee206f8b1b53874448e2481db001cd3706753190cfc9381318c7a7c41c\",\"dweb:/ipfs/QmQ5UYSadtzrb7BcTR93KnAYKXawdyDUG5HjjASV1zbys5\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPayHook.sol\":{\"keccak256\":\"0x9438866782c652c2942f4d114e35f393cd3c8b0334abce8387eed90bca35e8b2\",\"urls\":[\"bzz-raw://cfd99daf57213f92325aad7d7d16e98476d38e870470e95ba01e3ae3cdecc95d\",\"dweb:/ipfs/QmUKKAVGf7ki8BHksr99tFcRW8APveeB5tNH63ctTbbCW8\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPriceFeed.sol\":{\"keccak256\":\"0x4bd84c0f1a5d4729ed709bcddd43f4c50ec4a165ece79780af8dce482ed07d4a\",\"urls\":[\"bzz-raw://62bac4bfb6982fb002f620c77e5c445e62d50241a5aa64a07e51d929f5a42180\",\"dweb:/ipfs/QmWgJUDreVY2BuMX38a1iUUR5kNbMwGnKG3VvurB7oZtuM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPrices.sol\":{\"keccak256\":\"0xb4d5244daa52aafab0c9b8806b7f973afa6a3b298add5966d586d27b78424cfb\",\"urls\":[\"bzz-raw://a819f74455aaa4f679ded378424702f3992608a640d7f943b19938eb4ff711da\",\"dweb:/ipfs/QmSMGvVTsMW3L5YSUyXTKoEsgNpGEutnq4frEZHuDdeDvz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjectUriRegistry.sol\":{\"keccak256\":\"0xc9ab647179d7d0c857fdd881d6ce96f06254739440ed08e85a1c2042218f7c7d\",\"urls\":[\"bzz-raw://8529368f30c98c8d5a69acdbe4ac79e3eeb4afa5a9cd278325c5f2184ef3d50f\",\"dweb:/ipfs/QmfUaozYiAGt1UwBDUEZvon1tEBS5sLPzqpN9dNdjQotPN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjects.sol\":{\"keccak256\":\"0x4ae42a9cc29b517b26d2b9b635deb82c16696b777deeca92dfcad33b0f81c0a0\",\"urls\":[\"bzz-raw://1dcbd860e7d7f05232d90c5e9cfd3d01e2ce986ffcdb053473d8a4d387b1a48a\",\"dweb:/ipfs/QmWKWoSJJbVWDumbnzXJBJyXmAacgC97bxMtchh8te41bn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesetApprovalHook.sol\":{\"keccak256\":\"0x592e95d159494421c6b1bcb362d0cee1df0132921697351304e9cd7af4fbd386\",\"urls\":[\"bzz-raw://5bebfd5fa67c1b6ea16fa2e76e9520e9dfe52a579f48dd94d0c2ec45f78ad178\",\"dweb:/ipfs/QmRUawEGtfYoYSHmHELGhvJoWuMsxLPKtqAXgsrb7fJboP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesets.sol\":{\"keccak256\":\"0x29b56a91e8cd4d3e718e18cd934eccbc22c668d08dc26adb43c958722497d3ab\",\"urls\":[\"bzz-raw://7ae1a723eaf16809b9bd73cd235985801aff85283976be342416fa301c3b4793\",\"dweb:/ipfs/QmZYSY7C9dPvR5EnT8YCjVSy842dBVP3wZdYQ71wyPkx2F\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplitHook.sol\":{\"keccak256\":\"0xeb8dfac7a4b81897a1c3b5d0d853a406bcff33720fb187d5ca5bb3dcc0ba3a12\",\"urls\":[\"bzz-raw://36aaeef6107cfe5b0127e063ea215aac7200f8af02e28a48e61111abd3254688\",\"dweb:/ipfs/QmQ8yQANXnhQCAWBGKsKCDsJ3A8hnTKNg5tyo79GfWXTcV\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplits.sol\":{\"keccak256\":\"0x424e6d1189b9ba7a5d441e7675ae09ff893c13c62b9ddde4dd6bc2690e96c6f3\",\"urls\":[\"bzz-raw://7e30ed7ab1daf20ff324aacfef7150a243b5db496eceaf032c7012ccb3c4227d\",\"dweb:/ipfs/QmRj5EZKmDjJy8tpvKbpz8vPSKHR5C9Q5ENe7oSLij4H8M\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTerminal.sol\":{\"keccak256\":\"0xe440530f1d0cc16578981e1d2e4e13674360c677d19a74a4b08f9f7268c70aee\",\"urls\":[\"bzz-raw://ddea4aeaf523f48a1364a02d2ccb75f3dfd8a2b9af465964e9adf3ce53f4196a\",\"dweb:/ipfs/QmVWhN1Nn9khUN8ctAgh2Ypo2vnFBgDHtDw6S232A6RkFw\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBToken.sol\":{\"keccak256\":\"0xd33757cd3da65a9d66404b7e6ddb7a27b4902885a3498b9db1673c218e9fab2d\",\"urls\":[\"bzz-raw://de28759920dab1db6cfcb4ff2ffae76491be371b791a2a0ec054ff17653872dc\",\"dweb:/ipfs/QmPXnhdxbgoV4dBRJCi9siQYRfrvcJLDtY1rp3H2vtU1Cz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokenUriResolver.sol\":{\"keccak256\":\"0xfa5cb00dcd6085d1ef912d071fe73c63f9478a2cd0f9d8bddaf659b6af2d0967\",\"urls\":[\"bzz-raw://282e4e7c342d65f77cde0e9a08fcaf20ef5cf379c7a48b639842c0ffd0b2afb8\",\"dweb:/ipfs/QmbnN3PEQeZaXdPLT75V1J79kMg7KqSMru37RHrL3z8Yf2\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokens.sol\":{\"keccak256\":\"0x1348b416ebf501409acc9970d46be89ffd076566001ceff9b96fce1b0b2c405d\",\"urls\":[\"bzz-raw://74327019f5174345afed10d9a60caa9ef908382e131882c27588b13be8364b36\",\"dweb:/ipfs/QmZAqB6hFSymTEbjqHWgE4t9NRose9AJh4etGyWnvDkhJt\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/libraries/JBConstants.sol\":{\"keccak256\":\"0x822bef715c9d5803208a2e02f8d14e0ffdb1fb2ea84698c30fd801103be4a3d2\",\"urls\":[\"bzz-raw://476c87d74e31cd43419cce01551158993c311ac47ba5fad5768e26054b3c8a91\",\"dweb:/ipfs/QmdpxoGU6suZAm9FS7R47AwSmHEFjwmf6v56WrfZM4QkJc\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAccountingContext.sol\":{\"keccak256\":\"0x9c47e048a719f784f601df69a583505432217b9868a0244876d277f84dd1ebdf\",\"urls\":[\"bzz-raw://8565f194b87914da9a02af2e760ae2ed2a9d185c6f11229f7035140776d2fec9\",\"dweb:/ipfs/QmPs2fic8W3F5e5zNRwmGmJFjb3JWGPWJ3YUe5o82nQgEn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAfterPayRecordedContext.sol\":{\"keccak256\":\"0xd26c3a774ff38be79064085970454fe2603a23a638c76270d5b1b3829206c3e8\",\"urls\":[\"bzz-raw://3b55dbe3bf1ef625b7ca04efab3de35406e6041d5b3d82c7265469c500e2b702\",\"dweb:/ipfs/QmUdBDo4Lt3mcsFcsXT2mqq3czFwZjQJFPLM89YA2VtD7k\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBCurrencyAmount.sol\":{\"keccak256\":\"0x7f321bbcbd13abfbc8f0d08a5adaaf8ef312db5bb899012fcffb6170fbb962a9\",\"urls\":[\"bzz-raw://bf9301ef1dbb3abda7b492585377617508ba048c6170f21a5e7d2b3c034eb384\",\"dweb:/ipfs/QmcetEFxSYLLNSZzPBpNn3Fc8sFcrFE8A8h12ZSj2tLgxD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBFundAccessLimitGroup.sol\":{\"keccak256\":\"0x9fdaa8d017b72da25f583700a444a86849df053f7fb8eac874ec5139bcf651e5\",\"urls\":[\"bzz-raw://c8e44c49ee444a98424a0dbeb6897a76a0bf00d88a613f62ac2012afdac754ee\",\"dweb:/ipfs/QmdYkAiRi5bXM1YYNkc7BiqimHSFodMGn1cjHR5hcpm4xH\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRuleset.sol\":{\"keccak256\":\"0x03ad7bd257d4ac55ecc42b85156dce1c70eec8572dbf8feb093c033912f305e7\",\"urls\":[\"bzz-raw://9665b4c018cd469f94bec4471222cc9e5fd58ac421a0959f70e72618fe37d55b\",\"dweb:/ipfs/QmSUf6HQv2Ckcoy5tSH1UPdD8vDMerfK29G8kaxmxB3Kow\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetConfig.sol\":{\"keccak256\":\"0x7a57ed3d73bd9457d8e1fb40f5204c364df87cbfdbf42412d5bbc08beabb49c9\",\"urls\":[\"bzz-raw://8b9a83916ee67d32b5f434b35b171c6122bbc4efeaa4fabb8dec2ca4e9e32c6e\",\"dweb:/ipfs/QmNquzUQn6ZvE2wBcMCgru3resV9UNvBWPPetyDChoh8vM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetMetadata.sol\":{\"keccak256\":\"0x7f49fe89eefe848e6af12aa452bd882430ff35e9dd44e9ff3d7be6911496486c\",\"urls\":[\"bzz-raw://136f3baeb71f8ac1c2721eb94b1d469d35cf3fba82f9138760dde6d451d052ef\",\"dweb:/ipfs/QmVeBaYMS9K3rPfneKiVYnFXbp3X8qxrw4qhN4PmuYHppz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetWithMetadata.sol\":{\"keccak256\":\"0x1bcfadf20488f6df65227f8d4d0fbf9b7539456a2389567f7fe3900d23289bc3\",\"urls\":[\"bzz-raw://0a15c399a71e5373f8c0484c6d6b83521eda31e063a2c53e4c5cec4e74550343\",\"dweb:/ipfs/QmQwi8zkjoTVXbK89NeETYimWCacTrNsesJdpLSvGdqMPX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplit.sol\":{\"keccak256\":\"0x0e1351e80cf9967caee90094712a4fc884a83f07df23a844d8cb33ebcd00721e\",\"urls\":[\"bzz-raw://19d5793c08834f2ec1d6942bd43d05042b0ecc351a57235d748a8f2ff74b6638\",\"dweb:/ipfs/QmUWjyNg7x62KsvMwAzNdpmwqCo5qK5ip9pLdshj9B2Kbf\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitGroup.sol\":{\"keccak256\":\"0x8dc98fa9e730bee8bcc0a8acf1bc4db1c9b0edf307d969c9c9caa4d6b8d856d9\",\"urls\":[\"bzz-raw://66f4306e0e69c82033927952564fd617e7c4b29aa8b165d5b53a0ebe3109ea12\",\"dweb:/ipfs/QmQqN1u7FHAdEtEZNRcKvZwYtXEQVQnLd6FMzHESP7wDtx\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitHookContext.sol\":{\"keccak256\":\"0x1cef82bf434f91d518092ea7e57db4a72ce7654f48a7db9bf44882900b6b6623\",\"urls\":[\"bzz-raw://cc5012008ab7e74cf766fe1c202a23e3a73365356bcf1e0b04ec01baf21b204b\",\"dweb:/ipfs/QmSwJvd6Yrg9XZMhjquBcak5sfUswbR5nPEuJBfpjM54VT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTerminalConfig.sol\":{\"keccak256\":\"0x9e31505080d3754b6d7db96095b0545930ef6dbc035b91fcc32fdc76a0e7c2a5\",\"urls\":[\"bzz-raw://f7702ab33a1b713c37e5397a55d8ef089289f4da8034cfe9622cbc69a98c47de\",\"dweb:/ipfs/QmXyiXps4aJyiM7vtDC373QUoqwB4DMETaZzC5cZPJKaAK\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTokenAmount.sol\":{\"keccak256\":\"0xc61593d33d5ec30e695d382948a1b944d01e29a8f2bfd29f75ecebcdbc7816de\",\"urls\":[\"bzz-raw://8992c1e5fca0c2342ecc0e734dfba6a2a752e4c29184784931d0971e44305051\",\"dweb:/ipfs/QmYNcaW3qeCkgAExUaFTq238fgfJuoYCTwjCn7jm94U4dJ\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5ef46daa3b58ef2702279d514780316efaa952915ee1aa3396f041ee2982b0b4\",\"urls\":[\"bzz-raw://2f8f2a76e23b02fc69e8cd24c3cb47da6c7af3a2d6c3a382f8ac25c6e094ade7\",\"dweb:/ipfs/QmPV4ZS4tPVv4mTCf9ejyZ1ai57EEibDRj7mN2ARDCLV5n\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0x7f7a26306c79a65fb8b3b6c757cd74660c532cd8a02e165488e30027dd34ca49\",\"urls\":[\"bzz-raw://d01e0b2b837ee2f628545e54d8715b49c7ef2befd08356c2e7f6c50dde8a1c22\",\"dweb:/ipfs/QmWBAn6y2D1xgftci97Z3qR9tQnkvwQpYwFwkTvDMvqU4i\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"],\"license\":\"MIT\"},\"src/CTDeployer.sol\":{\"keccak256\":\"0xb2194d3dfb7fe00938fc81138312ee2d1c9d8a6f85d7b855ca6b4699d352eaaf\",\"urls\":[\"bzz-raw://8c952db48946251c34d3a7ed0e788ef9b429a721c63c8d1597987c6c8ccefa33\",\"dweb:/ipfs/QmS1jTjxQgEuD1gfYwz5xAyo1Rt19RnQkKtMy8s4X8uXnF\"],\"license\":\"MIT\"},\"src/interfaces/ICTDeployer.sol\":{\"keccak256\":\"0x6106eeb42e2e55cd089821b4a40318baec5d54da314438aadbe5e665d392808a\",\"urls\":[\"bzz-raw://ce2f0be916ebdf5bb083d0b3c824fb9f3f580b5f573fd76e40be99af589b4a88\",\"dweb:/ipfs/QmUG7naVkzKSBxeoqk3Y4rn2sVz8ckfChpDeQtq2X13w14\"],\"license\":\"MIT\"},\"src/interfaces/ICTPublisher.sol\":{\"keccak256\":\"0x8fab84f363d0a7e7707eb93979b43f5e129b7d9d8221d6d240107fdf3d46da5c\",\"urls\":[\"bzz-raw://016775346d46cb4358eb2c0e29bb6ccc543b5f37cef916e98bc7a079cbd9e894\",\"dweb:/ipfs/Qmdeu2FWQNsd9vC7wZFpryESU6M6kq99EwbBUkg4HoogQ7\"],\"license\":\"MIT\"},\"src/structs/CTAllowedPost.sol\":{\"keccak256\":\"0x1cab9579ed19fea4d490b1de827fd123a8cc7ababd73ed5421351a6f7142a371\",\"urls\":[\"bzz-raw://00695b12ade810d017427a7cf20856dc326bbedcf4548ed28e81a33f09b28ad8\",\"dweb:/ipfs/QmP3UPM4xyiSUnBhkThyVp1Ww8QfqfN7rk3fPx4Gu5Whsm\"],\"license\":\"MIT\"},\"src/structs/CTDeployerAllowedPost.sol\":{\"keccak256\":\"0xd5d637c9289810ab017c49cac4eb7a7fe531d014dd579b5bfed708a7305430be\",\"urls\":[\"bzz-raw://2bd3afca6d836dffda1aae775dc29d89f8542faa49855877314ae8412126e6ee\",\"dweb:/ipfs/QmSmF1Csz1AjXkZHW2SKw5bSwYq3runmzi88N5GmkkwwUZ\"],\"license\":\"MIT\"},\"src/structs/CTPost.sol\":{\"keccak256\":\"0xc4d67fc9a0323a2a923521f2fb3042bde046cb8c78fc69d928804ab8f3987038\",\"urls\":[\"bzz-raw://fb4d0a02ada8e751cbd7061f8d7b48705a9442339510232f51595ada0e73612d\",\"dweb:/ipfs/QmbFd4CeMhcY86Ze4izYYdK2xB7tQuwdHxdP7aB5zxy8ka\"],\"license\":\"MIT\"}},\"version\":1}", "args": [ "0x219A5cE6d1c512D5b050ad2E3d380b8746BE0Cb8", - "0x0Fa5747B59042c9C2A5A9C68C22919fa00468141", + "0x0b41a8Be7E30a01A7367e06601eD204c469eF94D", "0xDd0B2C80A18617F9428c1e9b096fE2DcE222d5F8" ], - "bytecode": "0x60e06040523480156200001157600080fd5b5060405162001ae038038062001ae083398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c0516119cf6200011160003960008181610127015261074f01526000818160db015261040701526000818161014e015281816101740152818161068901526107bb01526119cf6000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100d6578063dbfbe5da14610122578063ee0fc1211461014957600080fd5b8063150b7a021461006c57806328069df2146100b5575b600080fd5b61007f61007a36600461091b565b610170565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004610b5e565b610285565b6040519081526020016100ac565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102019190610c6f565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461023857600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561025957600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b604080516001808252818301909252600091829190816020015b6103686040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b81526020019060019003908161029f57905050905069d3c21bcecceda10000008160008151811061039b5761039b610c93565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee816000815181106103e3576103e3610c93565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808881526020018781526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018981526020016040518060800160405280600067ffffffffffffffff8111156104dd576104dd610a06565b60405190808252806020026020018201604052801561059a57816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816104fb5790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018f8f906106499190610cfa565b81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106c794939291906115c4565b6020604051808303816000875af11580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a919061175d565b915085156107b9576040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610786908a908a90600401611845565b600060405180830381600087803b1580156107a057600080fd5b505af11580156107b4573d6000803e3d6000fd5b505050505b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610c6f565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8d811660248301526044820185905291909116906323b872dd90606401600060405180830381600087803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b50505050509998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461090857600080fd5b50565b8035610916816108e6565b919050565b60008060008060006080868803121561093357600080fd5b853561093e816108e6565b9450602086013561094e816108e6565b935060408601359250606086013567ffffffffffffffff8082111561097257600080fd5b818801915088601f83011261098657600080fd5b81358181111561099557600080fd5b8960208285010111156109a757600080fd5b9699959850939650602001949392505050565b60008083601f8401126109cc57600080fd5b50813567ffffffffffffffff8111156109e457600080fd5b6020830191508360208260051b85010111156109ff57600080fd5b9250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610a5857610a58610a06565b60405290565b6040516060810167ffffffffffffffff81118282101715610a5857610a58610a06565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ac857610ac8610a06565b604052919050565b600082601f830112610ae157600080fd5b813567ffffffffffffffff811115610afb57610afb610a06565b610b2c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610a81565b818152846020838601011115610b4157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600080600080600060e08a8c031215610b7c57600080fd5b610b858a61090b565b985060208a013567ffffffffffffffff80821115610ba257600080fd5b610bae8d838e016109ba565b909a50985060408c0135915080821115610bc757600080fd5b610bd38d838e01610ad0565b975060608c0135915080821115610be957600080fd5b610bf58d838e016109ba565b909750955060808c0135915080821115610c0e57600080fd5b610c1a8d838e01610ad0565b945060a08c0135915080821115610c3057600080fd5b610c3c8d838e01610ad0565b935060c08c0135915080821115610c5257600080fd5b50610c5f8c828d01610ad0565b9150509295985092959850929598565b600060208284031215610c8157600080fd5b8151610c8c816108e6565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600067ffffffffffffffff821115610cdc57610cdc610a06565b5060051b60200190565b803563ffffffff8116811461091657600080fd5b6000610d0d610d0884610cc2565b610a81565b80848252602080830192508560051b850136811115610d2b57600080fd5b855b81811015610e5157803567ffffffffffffffff80821115610d4e5760008081fd5b81890191506040808336031215610d655760008081fd5b610d6d610a35565b8335610d78816108e6565b81528387013583811115610d8c5760008081fd5b939093019236601f850112610da357600092508283fd5b83359250610db3610d0884610cc2565b83815260609384028501880193888201919036861115610dd35760008081fd5b958901955b85871015610e3b57808736031215610df05760008081fd5b610df8610a5e565b8735610e03816108e6565b8152878b013560ff81168114610e195760008081fd5b818c0152610e28888701610ce6565b8187015283529586019591890191610dd8565b5082890152508852505050938201938201610d2d565b50919695505050505050565b6000815180845260005b81811015610e8357602081850181015186830182015201610e67565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b82811015610fce57845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101610ee3565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611035602084018261ffff169052565b50604081015161104d604084018263ffffffff169052565b506060810151611061606084018215159052565b506080810151611075608084018215159052565b5060a081015161108960a084018215159052565b5060c081015161109d60c084018215159052565b5060e08101516110b160e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561121b5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c09092019160010161119d565b50509c88019c965050509285019250600101611148565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156112a057815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff168388015260409096019590820190600101611255565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b8481101561136a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261133883880182611240565b92505050606080830151925085820381870152506113568183611240565b9a86019a94505050908301906001016112c8565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b8181101561143e5786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b019591840191600101611406565b50509d89019d97505050938601935050600101611395565b6000608082516080855261146d6080860182610e5d565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b8281101561158b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a080820151610300919061154082870182611018565b505060c0820151816102c086015261155a8286018261112a565b91505060e082015191508381036102e085015261157781836112ab565b968801969588019593505050600101611497565b506040890151965089810360408b01526115a58188611377565b96505050505050506060830151848203606086015261027c8282610e5d565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526115ff6101e0850183610e5d565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261163b8483610e5d565b935060408901519150808685030160c08701526116588483610e5d565b93506060890151915061168360e087018373ffffffffffffffffffffffffffffffffffffffff169052565b60808901519150808685030161010087015261169f8483610e5d565b935060a089015191508086850301610120870152506116be8382610ec1565b92505060c08701516116e961014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611724828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b505082810360408401526117388186611456565b91505061027c606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60006020828403121561176f57600080fd5b5051919050565b80356cffffffffffffffffffffffffff8116811461091657600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126117c857600080fd5b830160208101925035905067ffffffffffffffff8111156117e857600080fd5b8060051b36038213156109ff57600080fd5b8183526000602080850194508260005b858110156112a057813561181d816108e6565b73ffffffffffffffffffffffffffffffffffffffff168752958201959082019060010161180a565b60208082528181018390526000906040808401600586901b8501820187855b8881101561198b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc088840301845281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff418b36030181126118c557600080fd5b8a0160c081356118d4816108e6565b73ffffffffffffffffffffffffffffffffffffffff1685528188013562ffffff811680821461190257600080fd5b868a015250611912828801611776565b6cffffffffffffffffffffffffff16878601526060611932838201610ce6565b63ffffffff16908601526080611949838201610ce6565b63ffffffff169086015260a061196183820184611793565b9350828288015261197583880185836117fa565b978a019796505050928701925050600101611864565b50909897505050505050505056fea264697066735822122029914f24dcb2aed1ea328417910b2890afe68be8fde4c0fb9e5100c562be942464736f6c63430008170033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100d6578063dbfbe5da14610122578063ee0fc1211461014957600080fd5b8063150b7a021461006c57806328069df2146100b5575b600080fd5b61007f61007a36600461091b565b610170565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004610b5e565b610285565b6040519081526020016100ac565b6100fd7f0000000000000000000000000fa5747b59042c9c2a5a9c68c22919fa0046814181565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6100fd7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f881565b6100fd7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb881565b60007f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102019190610c6f565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461023857600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561025957600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b604080516001808252818301909252600091829190816020015b6103686040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b81526020019060019003908161029f57905050905069d3c21bcecceda10000008160008151811061039b5761039b610c93565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee816000815181106103e3576103e3610c93565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f0000000000000000000000000fa5747b59042c9c2a5a9c68c22919fa0046814173ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808881526020018781526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018981526020016040518060800160405280600067ffffffffffffffff8111156104dd576104dd610a06565b60405190808252806020026020018201604052801561059a57816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816104fb5790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018f8f906106499190610cfa565b81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb86040518563ffffffff1660e01b81526004016106c794939291906115c4565b6020604051808303816000875af11580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a919061175d565b915085156107b9576040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8169063441e4d3490610786908a908a90600401611845565b600060405180830381600087803b1580156107a057600080fd5b505af11580156107b4573d6000803e3d6000fd5b505050505b7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610c6f565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8d811660248301526044820185905291909116906323b872dd90606401600060405180830381600087803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b50505050509998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461090857600080fd5b50565b8035610916816108e6565b919050565b60008060008060006080868803121561093357600080fd5b853561093e816108e6565b9450602086013561094e816108e6565b935060408601359250606086013567ffffffffffffffff8082111561097257600080fd5b818801915088601f83011261098657600080fd5b81358181111561099557600080fd5b8960208285010111156109a757600080fd5b9699959850939650602001949392505050565b60008083601f8401126109cc57600080fd5b50813567ffffffffffffffff8111156109e457600080fd5b6020830191508360208260051b85010111156109ff57600080fd5b9250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610a5857610a58610a06565b60405290565b6040516060810167ffffffffffffffff81118282101715610a5857610a58610a06565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ac857610ac8610a06565b604052919050565b600082601f830112610ae157600080fd5b813567ffffffffffffffff811115610afb57610afb610a06565b610b2c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610a81565b818152846020838601011115610b4157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600080600080600060e08a8c031215610b7c57600080fd5b610b858a61090b565b985060208a013567ffffffffffffffff80821115610ba257600080fd5b610bae8d838e016109ba565b909a50985060408c0135915080821115610bc757600080fd5b610bd38d838e01610ad0565b975060608c0135915080821115610be957600080fd5b610bf58d838e016109ba565b909750955060808c0135915080821115610c0e57600080fd5b610c1a8d838e01610ad0565b945060a08c0135915080821115610c3057600080fd5b610c3c8d838e01610ad0565b935060c08c0135915080821115610c5257600080fd5b50610c5f8c828d01610ad0565b9150509295985092959850929598565b600060208284031215610c8157600080fd5b8151610c8c816108e6565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600067ffffffffffffffff821115610cdc57610cdc610a06565b5060051b60200190565b803563ffffffff8116811461091657600080fd5b6000610d0d610d0884610cc2565b610a81565b80848252602080830192508560051b850136811115610d2b57600080fd5b855b81811015610e5157803567ffffffffffffffff80821115610d4e5760008081fd5b81890191506040808336031215610d655760008081fd5b610d6d610a35565b8335610d78816108e6565b81528387013583811115610d8c5760008081fd5b939093019236601f850112610da357600092508283fd5b83359250610db3610d0884610cc2565b83815260609384028501880193888201919036861115610dd35760008081fd5b958901955b85871015610e3b57808736031215610df05760008081fd5b610df8610a5e565b8735610e03816108e6565b8152878b013560ff81168114610e195760008081fd5b818c0152610e28888701610ce6565b8187015283529586019591890191610dd8565b5082890152508852505050938201938201610d2d565b50919695505050505050565b6000815180845260005b81811015610e8357602081850181015186830182015201610e67565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b82811015610fce57845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101610ee3565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611035602084018261ffff169052565b50604081015161104d604084018263ffffffff169052565b506060810151611061606084018215159052565b506080810151611075608084018215159052565b5060a081015161108960a084018215159052565b5060c081015161109d60c084018215159052565b5060e08101516110b160e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561121b5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c09092019160010161119d565b50509c88019c965050509285019250600101611148565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156112a057815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff168388015260409096019590820190600101611255565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b8481101561136a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261133883880182611240565b92505050606080830151925085820381870152506113568183611240565b9a86019a94505050908301906001016112c8565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b8181101561143e5786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b019591840191600101611406565b50509d89019d97505050938601935050600101611395565b6000608082516080855261146d6080860182610e5d565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b8281101561158b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a080820151610300919061154082870182611018565b505060c0820151816102c086015261155a8286018261112a565b91505060e082015191508381036102e085015261157781836112ab565b968801969588019593505050600101611497565b506040890151965089810360408b01526115a58188611377565b96505050505050506060830151848203606086015261027c8282610e5d565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526115ff6101e0850183610e5d565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261163b8483610e5d565b935060408901519150808685030160c08701526116588483610e5d565b93506060890151915061168360e087018373ffffffffffffffffffffffffffffffffffffffff169052565b60808901519150808685030161010087015261169f8483610e5d565b935060a089015191508086850301610120870152506116be8382610ec1565b92505060c08701516116e961014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611724828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b505082810360408401526117388186611456565b91505061027c606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60006020828403121561176f57600080fd5b5051919050565b80356cffffffffffffffffffffffffff8116811461091657600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126117c857600080fd5b830160208101925035905067ffffffffffffffff8111156117e857600080fd5b8060051b36038213156109ff57600080fd5b8183526000602080850194508260005b858110156112a057813561181d816108e6565b73ffffffffffffffffffffffffffffffffffffffff168752958201959082019060010161180a565b60208082528181018390526000906040808401600586901b8501820187855b8881101561198b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc088840301845281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff418b36030181126118c557600080fd5b8a0160c081356118d4816108e6565b73ffffffffffffffffffffffffffffffffffffffff1685528188013562ffffff811680821461190257600080fd5b868a015250611912828801611776565b6cffffffffffffffffffffffffff16878601526060611932838201610ce6565b63ffffffff16908601526080611949838201610ce6565b63ffffffff169086015260a061196183820184611793565b9350828288015261197583880185836117fa565b978a019796505050928701925050600101611864565b50909897505050505050505056fea264697066735822122029914f24dcb2aed1ea328417910b2890afe68be8fde4c0fb9e5100c562be942464736f6c63430008170033", + "bytecode": "0x60e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f0000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d81565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f881565b6101197f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb881565b60007f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f0000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d73ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb86040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033", "devdoc": { "kind": "dev", "methods": { @@ -405,7 +298,7 @@ "publisher": "The croptop publisher." } }, - "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)": { + "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)": { "params": { "allowedPosts": "The type of posts that the project should allow.", "contractUri": "A link to the collection's metadata.", @@ -416,6 +309,7 @@ "terminalConfigurations": "The terminals that the network uses to accept payments through." }, "returns": { + "hook": "The hook that was created.", "projectId": "The ID of the newly created project." } }, @@ -437,13 +331,13 @@ "PUBLISHER()": { "notice": "The Croptop publisher." }, - "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)": { + "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)": { "notice": "Deploy a simple project meant to receive posts from Croptop templates." } }, "version": 1 }, - "gitCommit": "16734148f27d14bbd70bf0ed9971692913574a0a", + "gitCommit": "95474c408eb80f99d9b5c5dc926d9372c5b46419", "sourceName": "src/CTDeployer.sol", "chainId": "11155420", "linkReferences": {}, diff --git a/deployments/croptop-core-testnet/optimism_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json b/deployments/croptop-core-testnet/optimism_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json new file mode 100644 index 0000000..6138420 --- /dev/null +++ b/deployments/croptop-core-testnet/optimism_sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json @@ -0,0 +1,221 @@ +{ + "_format": "sphinx-sol-execution-artifact-1", + "transactions": [ + { + "receipt": { + "blockHash": "0x29ed0106cdead935478494aa2beee65534af7a48ded49d7c8f7e70f9d1230656", + "blockNumber": 17490349, + "contractAddress": null, + "cumulativeGasUsed": "1986429", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasPrice": "1000273", + "gasUsed": "176665", + "hash": "0xbbe79e82fab2b422427a03bbdbc44217e816b01de4dd2529a42c1ec92e9593a6", + "index": 12, + "logs": [ + { + "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "blockHash": "0x29ed0106cdead935478494aa2beee65534af7a48ded49d7c8f7e70f9d1230656", + "blockNumber": 17490349, + "data": "0x0000000000000000000000000000000000000000000000000000000000000000", + "index": 28, + "topics": [ + "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", + "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", + "0x2ce8363adb23af67f468ba3350d0fe4cc285f8e5790ddf5b6926748a2041854c" + ], + "transactionHash": "0xbbe79e82fab2b422427a03bbdbc44217e816b01de4dd2529a42c1ec92e9593a6", + "transactionIndex": 12 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0x29ed0106cdead935478494aa2beee65534af7a48ded49d7c8f7e70f9d1230656", + "blockNumber": 17490349, + "data": "0x000000000000000000000000a2ea7657440875bf916cbfc0cfa88f13e38ad463000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000", + "index": 29, + "topics": [ + "0x382c7aec02462c9b086aba9a7f8dbb1fb8bf336e7b624b0149eeca6726d0fb4a", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", + "0x0000000000000000000000000000000000000000000000000000000000000004" + ], + "transactionHash": "0xbbe79e82fab2b422427a03bbdbc44217e816b01de4dd2529a42c1ec92e9593a6", + "transactionIndex": 12 + } + ], + "logsBloom": "0x000000000000000000000000000000080000000000000000000000000000000000800000000000010000040000400200000000000000000000000000000000000040000000000000000000000400010000000000000000000000021000000000080000000000000000000000400000000000000000000000000000000000000000000000040000000001000000000000000000000000000000000000000000000040000000000000000000000000000020000000000000001020000000000000000000020008000000000000000000000000000080000000000000000000020000000000000000000000000000000000000000000001a0000000000000000000", + "status": 1, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" + }, + "response": { + "accessList": [], + "blockNumber": 17490349, + "blockHash": "0x29ed0106cdead935478494aa2beee65534af7a48ded49d7c8f7e70f9d1230656", + "chainId": "11155420", + "data": "0xbe6002c200000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003448f38f8357664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000aa37dc0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000100000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d52600000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce49600000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000002000000000000000000000000a2ea7657440875bf916cbfc0cfa88f13e38ad46300000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003dd1e1739cfd54f793dd3fed0109a725ff0cdb4829dc43eb267ab9e4a222414fde0d6386c2bc2359f6229ef0a391171b1372453b521c4d53adf4ccf8e583408cd0d40f0103d044a1e4431a52c327bb488871b6ba8ffef8051c28d440c3da5070e0000000000000000000000000000000000000000000000000000000000000041318a8592b87bc679f193eaed94fbdf9aaddd6beed718ca79935e8a7acb651d3917c9ea79652056ab2facb2f5904029175ec09b28e67a5a2f93365152e7dfe91d1b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasLimit": "188958", + "gasPrice": "1000273", + "hash": "0xbbe79e82fab2b422427a03bbdbc44217e816b01de4dd2529a42c1ec92e9593a6", + "maxFeePerGas": "1000546", + "maxPriorityFeePerGas": "1000000", + "nonce": 114, + "signature": { + "networkV": null, + "r": "0x98acbe564e5873bcf8dd367c0b77a151506e70ca09bd40fdcd21c1f5e012c054", + "s": "0x36e57f9309adab762f48422144fcc2ba54c9bd81bdb6014421d944256bc9b679", + "v": 27 + }, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "type": 2, + "value": "0" + } + }, + { + "receipt": { + "blockHash": "0x14057344c8a7b49711e327c53057a7aed3e722f6bdea5bec469377d35996c2a7", + "blockNumber": 17490359, + "contractAddress": null, + "cumulativeGasUsed": "2567538", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasPrice": "1000274", + "gasUsed": "1758344", + "hash": "0x1162dc0ce123bf6bda9492d98b56c51d7f851fe6c3d9fe6462b9e7d692ee2b58", + "index": 5, + "logs": [ + { + "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "blockHash": "0x14057344c8a7b49711e327c53057a7aed3e722f6bdea5bec469377d35996c2a7", + "blockNumber": 17490359, + "data": "0x0000000000000000000000000000000000000000000000000000000000000000", + "index": 11, + "topics": [ + "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", + "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", + "0x5c7a30a108c1b2ee2041a2bef5ed3f114d40e11283e306d70ebc2a565d6b1aef" + ], + "transactionHash": "0x1162dc0ce123bf6bda9492d98b56c51d7f851fe6c3d9fe6462b9e7d692ee2b58", + "transactionIndex": 5 + }, + { + "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", + "blockHash": "0x14057344c8a7b49711e327c53057a7aed3e722f6bdea5bec469377d35996c2a7", + "blockNumber": 17490359, + "data": "0x", + "index": 12, + "topics": [ + "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" + ], + "transactionHash": "0x1162dc0ce123bf6bda9492d98b56c51d7f851fe6c3d9fe6462b9e7d692ee2b58", + "transactionIndex": 5 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0x14057344c8a7b49711e327c53057a7aed3e722f6bdea5bec469377d35996c2a7", + "blockNumber": 17490359, + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", + "index": 13, + "topics": [ + "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" + ], + "transactionHash": "0x1162dc0ce123bf6bda9492d98b56c51d7f851fe6c3d9fe6462b9e7d692ee2b58", + "transactionIndex": 5 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0x14057344c8a7b49711e327c53057a7aed3e722f6bdea5bec469377d35996c2a7", + "blockNumber": 17490359, + "data": "0x", + "index": 14, + "topics": [ + "0x4383d976757d67ca920616be0b6430a681ea9d3dcce8d6d61d4603ca4a9bff63", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" + ], + "transactionHash": "0x1162dc0ce123bf6bda9492d98b56c51d7f851fe6c3d9fe6462b9e7d692ee2b58", + "transactionIndex": 5 + } + ], + "logsBloom": "0x00000000000010000000000000080008000000000000000000000000000000000080000000000000000004000042020000000000000000000000000000000000000000000000200000000000040001000000000000000000000002000000000000000000000000000000000040000000000000000000000000000000000000000000000004020000000100000000000000000000000000000000000000000000004000800000000000000000000000002200000020000000100000000004000000000002000800000000000000001080000000000000000000000000000002000000000000000008000000000000000200000000000080040000000008000000", + "status": 1, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" + }, + "response": { + "accessList": [], + "blockNumber": 17490359, + "blockHash": "0x14057344c8a7b49711e327c53057a7aed3e722f6bdea5bec469377d35996c2a7", + "chainId": "11155420", + "data": "0xbe6002c200000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000020a4e65ec46d00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001fc00000000000000000000000000000000000000000000000000000000000aa37dc0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000001ee00000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001db13b00000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000001de65f4445504c4f5945525f53414c545f000000000000000000000000000000000060e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb80000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000033085bdf5cef283d701c4d0006efef38110a03452a7176a1163ac9ff726c9d2bb4855c914fc88b177cdb1dde512d41e4a9f1995fb601196f9cab7f5ff0dee764c75bb4e2308d9ba2dfd2306c11e3ef6a8f1b40ae9f18bf1a90c74e928db178d6400000000000000000000000000000000000000000000000000000000", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasLimit": "2305166", + "gasPrice": "1000274", + "hash": "0x1162dc0ce123bf6bda9492d98b56c51d7f851fe6c3d9fe6462b9e7d692ee2b58", + "maxFeePerGas": "1000546", + "maxPriorityFeePerGas": "1000000", + "nonce": 115, + "signature": { + "networkV": null, + "r": "0xe91acc8d03c23c4f03a6f364ee143cdc9e1b8dfdd48790a0b46c7698cacfdfbc", + "s": "0x1f5040cd7f29e8962e965d5654101b83e4d36b620c270fc426debbdb708983e0", + "v": 27 + }, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "type": 2, + "value": "0" + } + } + ], + "merkleRoot": "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", + "solcInputHashes": [ + "c8660e6ab664b4186505e261472223cd" + ], + "safeAddress": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", + "moduleAddress": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "executorAddress": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "nonce": "4", + "chainId": "11155420", + "actions": [ + { + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "value": "0", + "txData": "0x5f4445504c4f5945525f53414c545f000000000000000000000000000000000060e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb80000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8", + "gas": "1945915", + "operation": 0, + "requireSuccess": true + } + ], + "sphinxConfig": { + "projectName": "croptop-core-testnet", + "orgId": "my-org-id", + "owners": [ + "0xba5ed94ab173e1242638F28d1449b24F1A883292" + ], + "mainnets": [ + "ethereum", + "optimism", + "base", + "arbitrum" + ], + "testnets": [ + "ethereum_sepolia", + "optimism_sepolia", + "base_sepolia", + "arbitrum_sepolia" + ], + "threshold": "1", + "saltNonce": "16" + }, + "executionMode": 2, + "initialState": { + "isSafeDeployed": true, + "isModuleDeployed": true, + "isExecuting": false + }, + "unlabeledContracts": [], + "arbitraryChain": false, + "libraries": [], + "gitCommit": "95474c408eb80f99d9b5c5dc926d9372c5b46419", + "safeInitData": null +} \ No newline at end of file diff --git a/deployments/croptop-core-testnet/sepolia/CTDeployer.json b/deployments/croptop-core-testnet/sepolia/CTDeployer.json index b4e7221..d014466 100644 --- a/deployments/croptop-core-testnet/sepolia/CTDeployer.json +++ b/deployments/croptop-core-testnet/sepolia/CTDeployer.json @@ -1,8 +1,8 @@ { "_format": "sphinx-sol-ct-artifact-1", - "merkleRoot": "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399", + "merkleRoot": "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", "contractName": "CTDeployer", - "address": "0xa793Fe17F1A09FEaE10fa37C63Ad8003C7eAD42c", + "address": "0x1Fd03a75AaC42E952Bf46C230Dd2dc485b3d422A", "abi": [ { "type": "constructor", @@ -115,13 +115,8 @@ { "name": "allowedPosts", "type": "tuple[]", - "internalType": "struct CTAllowedPost[]", + "internalType": "struct CTDeployerAllowedPost[]", "components": [ - { - "name": "hook", - "type": "address", - "internalType": "address" - }, { "name": "category", "type": "uint24", @@ -170,6 +165,11 @@ "name": "projectId", "type": "uint256", "internalType": "uint256" + }, + { + "name": "hook", + "type": "address", + "internalType": "contract IJB721TiersHook" } ], "stateMutability": "nonpayable" @@ -209,192 +209,85 @@ "stateMutability": "view" } ], - "solcInputHash": "f505eda6318b63c8492f7b48bcb629a8", + "solcInputHash": "c8660e6ab664b4186505e261472223cd", "receipt": { - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, + "blockHash": "0x891c402af16644607276af464c0d607f0640a63cd7b08b995da7e755573589d2", + "blockNumber": 6723615, "contractAddress": null, - "cumulativeGasUsed": "24968273", + "cumulativeGasUsed": "15673888", "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", - "gasPrice": "5315313365", - "gasUsed": "4998829", - "hash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "index": 173, + "gasPrice": "301946493", + "gasUsed": "1758346", + "hash": "0xa4f46c01787afe2cc8a98399960ae32cd96e677ec0c4443a50189444ef613210", + "index": 84, "logs": [ { "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, + "blockHash": "0x891c402af16644607276af464c0d607f0640a63cd7b08b995da7e755573589d2", + "blockNumber": 6723615, "data": "0x0000000000000000000000000000000000000000000000000000000000000000", - "index": 178, + "index": 113, "topics": [ "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", - "0x03f340dad683e6dbb9d3f0f5191e4ab47fe2a3a1bbf3024523b1ca20bb212ee5" - ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 - }, - { - "address": "0xEcB62030E30Bb027F672F24692111492Ba2Bbc84", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, - "data": "0x000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d526", - "index": 179, - "topics": [ - "0x365b3162cd780731fc55a794b59494d472bc2af701007f581843a70673814698", - "0x0000000000000000000000000000000000000000000000000000000000000002", - "0x000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d526" - ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 - }, - { - "address": "0xEcB62030E30Bb027F672F24692111492Ba2Bbc84", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, - "data": "0x", - "index": 180, - "topics": [ - "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", - "0x0000000000000000000000000000000000000000000000000000000000000000", - "0x000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d526", - "0x0000000000000000000000000000000000000000000000000000000000000002" + "0x2370cc0aa95798d03dbbf1d3f160a4e45d9b9dd12a61b27373fad5b3692ada45" ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 + "transactionHash": "0xa4f46c01787afe2cc8a98399960ae32cd96e677ec0c4443a50189444ef613210", + "transactionIndex": 84 }, { "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, + "blockHash": "0x891c402af16644607276af464c0d607f0640a63cd7b08b995da7e755573589d2", + "blockNumber": 6723615, "data": "0x", - "index": 181, + "index": 114, "topics": [ "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 + "transactionHash": "0xa4f46c01787afe2cc8a98399960ae32cd96e677ec0c4443a50189444ef613210", + "transactionIndex": 84 }, { "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, + "blockHash": "0x891c402af16644607276af464c0d607f0640a63cd7b08b995da7e755573589d2", + "blockNumber": 6723615, "data": "0x0000000000000000000000000000000000000000000000000000000000000001", - "index": 182, - "topics": [ - "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" - ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 - }, - { - "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, - "data": "0x", - "index": 183, - "topics": [ - "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", - "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" - ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 - }, - { - "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, - "data": "0x0000000000000000000000000000000000000000000000000000000000000002", - "index": 184, - "topics": [ - "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" - ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 - }, - { - "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, - "data": "0x", - "index": 185, - "topics": [ - "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", - "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" - ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 - }, - { - "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, - "data": "0x0000000000000000000000000000000000000000000000000000000000000003", - "index": 186, - "topics": [ - "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" - ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 - }, - { - "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, - "data": "0x", - "index": 187, - "topics": [ - "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", - "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" - ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 - }, - { - "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, - "data": "0x0000000000000000000000000000000000000000000000000000000000000004", - "index": 188, + "index": 115, "topics": [ "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 + "transactionHash": "0xa4f46c01787afe2cc8a98399960ae32cd96e677ec0c4443a50189444ef613210", + "transactionIndex": 84 }, { "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", - "blockHash": "0xbb84c7f5707f70f8344f8f8ca3d83b0e0ffec3393065a81670e6ff0e0b932690", - "blockNumber": 6711101, + "blockHash": "0x891c402af16644607276af464c0d607f0640a63cd7b08b995da7e755573589d2", + "blockNumber": 6723615, "data": "0x", - "index": 189, + "index": 116, "topics": [ "0x4383d976757d67ca920616be0b6430a681ea9d3dcce8d6d61d4603ca4a9bff63", - "0xe9774f5007ef20ce1f30a672e3122196ab2e36737ea14b458d0007cdec845399" + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" ], - "transactionHash": "0x5786e460015d24d9bf1cbbced3871f6cc8a16612aa929ac2a5d503cc00110a41", - "transactionIndex": 173 + "transactionHash": "0xa4f46c01787afe2cc8a98399960ae32cd96e677ec0c4443a50189444ef613210", + "transactionIndex": 84 } ], - "logsBloom": "0x0400000000001000000000000008020000080000000040000000000000000000008000000000000000000400004002000000000000000000000000000000000000a000100000200000000009040000000000000000000000000000000000000000000040020000200000000040000800000000000000000000000010000000000000000004000000000100040000000040000000000000000000000000000000004000800000000000000100000000002200000020000000100000000004000000000002000800000000000000001080010000010000000001000000000022000000000000000008000000000000000200000000008080000000000008000000", + "logsBloom": "0x00000000000010000000000000080408000000000000000000000000000000000080000000800000000004000040020000000000000000000000000000000000000000000000200000000000040001000000000000000000000002000000000000000000000000000000000040000000000000000000000000000000000000000000000004000000000100000000000000000000000000000000000000000000004000800000000000001000000000002200000020000000100000000004000000000002000800000000000000001080000000000000000000000000000002000000000000000008000000000000000200000000000080000000000008000000", "status": 1, "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" }, - "metadata": "{\"compiler\":{\"version\":\"0.8.23+commit.f704f362\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"deployer\",\"type\":\"address\"},{\"internalType\":\"contract ICTPublisher\",\"name\":\"publisher\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CONTROLLER\",\"outputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DEPLOYER\",\"outputs\":[{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"PUBLISHER\",\"outputs\":[{\"internalType\":\"contract ICTPublisher\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct CTAllowedPost[]\",\"name\":\"allowedPosts\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"hook\",\"type\":\"address\"},{\"internalType\":\"uint24\",\"name\":\"category\",\"type\":\"uint24\"},{\"internalType\":\"uint104\",\"name\":\"minimumPrice\",\"type\":\"uint104\"},{\"internalType\":\"uint32\",\"name\":\"minimumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maximumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"address[]\",\"name\":\"allowedAddresses\",\"type\":\"address[]\"}]},{\"internalType\":\"string\",\"name\":\"contractUri\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"deployProjectFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}]}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"controller\":\"The controller that projects are made from.\",\"deployer\":\"The deployer to launch Croptop projects from.\",\"publisher\":\"The croptop publisher.\"}},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"params\":{\"allowedPosts\":\"The type of posts that the project should allow.\",\"contractUri\":\"A link to the collection's metadata.\",\"name\":\"The name of the collection where posts will go.\",\"owner\":\"The address that'll own the project.\",\"projectUri\":\"The metadata URI containing project info.\",\"symbol\":\"The symbol of the collection where posts will go.\",\"terminalConfigurations\":\"The terminals that the network uses to accept payments through.\"},\"returns\":{\"projectId\":\"The ID of the newly created project.\"}},\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Make sure only mints can be received.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"CONTROLLER()\":{\"notice\":\"The controller that projects are made from.\"},\"DEPLOYER()\":{\"notice\":\"The deployer to launch Croptop recorded collections from.\"},\"PUBLISHER()\":{\"notice\":\"The Croptop publisher.\"},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"notice\":\"Deploy a simple project meant to receive posts from Croptop templates.\"}},\"version\":1}},\"settings\":{\"remappings\":[\"@arbitrum/=node_modules/@arbitrum/\",\"@bananapus/=node_modules/@bananapus/\",\"@chainlink/=node_modules/@chainlink/\",\"@croptop/core/=/\",\"@eth-optimism/=node_modules/@eth-optimism/\",\"@exhausted-pigeon/=node_modules/@exhausted-pigeon/\",\"@offchainlabs/=node_modules/@offchainlabs/\",\"@openzeppelin/=node_modules/@openzeppelin/\",\"@prb/=node_modules/@prb/\",\"@rev-net/=node_modules/@rev-net/\",\"@scroll-tech/=node_modules/@scroll-tech/\",\"@sphinx-labs/contracts/=node_modules/@sphinx-labs/contracts/contracts/foundry/\",\"@uniswap/=node_modules/@uniswap/\",\"base64-sol/=node_modules/base64-sol/\",\"ds-test/=lib/forge-std/lib/ds-test/src/\",\"forge-std/=lib/forge-std/src/\",\"hardhat/=node_modules/hardhat/\",\"solady/=node_modules/solady/\",\"solmate/=node_modules/solmate/\",\"sphinx/=lib/sphinx/packages/contracts/contracts/forge-std/src/\"],\"optimizer\":{\"enabled\":true,\"runs\":100000000},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"compilationTarget\":{\"src/CTDeployer.sol\":\"CTDeployer\"},\"evmVersion\":\"paris\",\"libraries\":{}},\"sources\":{\"node_modules/@bananapus/721-hook/src/interfaces/IJB721Hook.sol\":{\"keccak256\":\"0xc4c1b2da6354c37e67e4463ca3dc652daf98769a7dc1af5b6e8bc31dc11bdc69\",\"urls\":[\"bzz-raw://583553ab050c7a96dbee7ffe8436a0f345617a816331bba0fb3d1c1e77b39110\",\"dweb:/ipfs/QmXj783jhFVdGzFqpiCgGaNjnmDE2qNGEGE7HidhzGgrSR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol\":{\"keccak256\":\"0x1b17153dcb3901a8d9156976ffb20c1047849ad1ce94c3a1934f7ca012b45bb5\",\"urls\":[\"bzz-raw://e86b10609f4ff4279592a7c185c6b202c0ff2572fad40dcbcfab878dbc735daa\",\"dweb:/ipfs/QmSJE6yTqKuA94BKAixiEFRGUUYhwtngsYDW3VCfrbMzKP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookDeployer.sol\":{\"keccak256\":\"0xdcf34032c2a22a782b7121e777715766cce471e9e8186cb710865de674d646bf\",\"urls\":[\"bzz-raw://00c19707f9fd04b9393a2081a50d69a14ed37d4a8f689c39219da6379aaacb53\",\"dweb:/ipfs/QmPdJYKrEEJxVYYaoV5rVRhoBuxmBTEH7u3J2TZtom1Sof\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol\":{\"keccak256\":\"0x9ec3cdc330019db6a8aeefac543f43054814e5a8a8beed15d51729e94df9ece1\",\"urls\":[\"bzz-raw://20632197d5f24e72999e3af9106fafa3fecbe1bc58c4cebb7cb7cdd73d573959\",\"dweb:/ipfs/QmdpF5NpGzWfCXupszxTjMN616vEGZtsiW35vGmTTxycwX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookStore.sol\":{\"keccak256\":\"0x6f3acee1130717bf1ac5c513cb167a8f121a64c047b505e9aced2b23793b79d7\",\"urls\":[\"bzz-raw://9f4dfe3be9e21c8b5446e9d37e699071f9df257a3c7a2fb8a8791e062617acbc\",\"dweb:/ipfs/QmarDks3DcMyHPVsKdj5qpma5ZBMzH8ti92MY38K76hvSA\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol\":{\"keccak256\":\"0xfa599167098f4459320ec4141a98a17b2dfffbce422baa27d8b4e4530f61ece1\",\"urls\":[\"bzz-raw://8b758b161f4c7b520b2c34b4d91e585e961b8f4ca278eebb91d791f7f2f45140\",\"dweb:/ipfs/QmcD9DF7NJ9QykQpT4KPzm4bs3fkjzukdAUWwdU6Atfw85\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol\":{\"keccak256\":\"0xff362fcd46992e56996e1b162b129a1d03ca2342a482421f279bd930b7af79dd\",\"urls\":[\"bzz-raw://56a52c0d4461fd1b278789cd31ccc77b5eab9a0d7e2fab5074bae9c8a79d0cb1\",\"dweb:/ipfs/QmagorkFXB4rEq5rfLcoZHu6jtjcMicMBPfVqMQT86xZoB\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721Tier.sol\":{\"keccak256\":\"0x99232aa73d5715977332dc7c93b03552a93259e59ae00e86b4ddc200f06adaf1\",\"urls\":[\"bzz-raw://721c0cf10a29fa11677718faafb3a2ecfcb4fbe4e1c09e70a7fac681c80fcc94\",\"dweb:/ipfs/QmSUR77E9PqnpB5kBcKNz2CGBjG9XL9FH57RWVYu3Q7GMR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TierConfig.sol\":{\"keccak256\":\"0x86e54a0de4deab9d105bf276586aebe256188b193e83eb7a6f6f93e4a29ae9c5\",\"urls\":[\"bzz-raw://04bfcc07d452c26dfc50d3a5eb62df4b3b81e063defd752e0aa5ed049a78eef4\",\"dweb:/ipfs/QmWd5nJHUvZPHxJXkrYCboXaqdtiWWkQG26sNM6qkJuAgD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersHookFlags.sol\":{\"keccak256\":\"0x283d8429f31bd58875c056515aa42abd09c95362bd929e85cfc44a0d92585766\",\"urls\":[\"bzz-raw://9a580b89fe99d9f8e930c58a4d0d63a5ff7c01c79d210af01373d066c9e72ed6\",\"dweb:/ipfs/QmdY1eSGSoTjv4KSdsG4Tm5CzJN6iqk3qTRga5ZWNbejRz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersMintReservesConfig.sol\":{\"keccak256\":\"0x86fe586a05e6d4bc6fab9b68996a7f4b74c5362ca6f24b9d8057ed7e4cd1c5ac\",\"urls\":[\"bzz-raw://0915f17d1f958ab1fe6b214d99ed62f1f858684898c803f1a8a6a557472dd140\",\"dweb:/ipfs/QmUhdnSV8UzkgvbtkYEKHrpyDEmc2aJxW5HQ1gucuxxu5A\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersSetDiscountPercentConfig.sol\":{\"keccak256\":\"0x4672eacb6b0cda5e6f5f72ddb91463c52fb90b4df421053e3b40024f19a59954\",\"urls\":[\"bzz-raw://9d8e3a0b35d6b2a6ec66527594263400189b6c766bfd6943c83704380a989aec\",\"dweb:/ipfs/QmUE7NhFWsxjFRzTuRyHJ7oRx3JXD9CnG83t29PjGAhwPR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBDeploy721TiersHookConfig.sol\":{\"keccak256\":\"0x0ce457736946394772afe54d575b68a74269cbf37a250de2d27dca6d9dd45005\",\"urls\":[\"bzz-raw://2010a8f6e19354038d3906ddb174f34464c5f341103313a5c4d628aa7732d5a8\",\"dweb:/ipfs/QmU9m18oWtYNV7UHLcW9kdwE3uzoQuGBe6sASvQTk8GZRL\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchProjectConfig.sol\":{\"keccak256\":\"0x0a8f87072dd6e5dd7c5cd5af7153172275de7e85625aa4a97da4fed65ad5b029\",\"urls\":[\"bzz-raw://b1d230835bf8fa17e8308d5d2ce4c820c4a719f451a65477f75956e100984047\",\"dweb:/ipfs/QmX6BwoYNJx1SssBLcBoPJBsg2Hv6ZP2uErXUvoMrAaQ71\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchRulesetsConfig.sol\":{\"keccak256\":\"0x0088bc7133e3fae1944247370a4eec227aeae8b371534e1d54439499644c0ede\",\"urls\":[\"bzz-raw://31847d92e9eb5e3125f07c23a651c0972e1784f748c4ce9d0c66853ee892c690\",\"dweb:/ipfs/QmRmoXg2MrkUFkMkgKvU7igkHQjhStbbc6CeiHkLCYAn7P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetConfig.sol\":{\"keccak256\":\"0x06fdbc5c40750b8d81e4c079f86a96f5ce922a0ddbb81ddc5a044aa166723f59\",\"urls\":[\"bzz-raw://b810a5768501951e08c46f1907a7f561a49c4e16f339f1679a493fcddd30cc50\",\"dweb:/ipfs/QmfCF85EAdQCnsixXCdkKb5Xz2bL9dqAoDhmiR1QoBo81P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetMetadata.sol\":{\"keccak256\":\"0x087280b3a959933c68ad19acbf07d80f9bbf632d902986c2ff624b6c31a6eeeb\",\"urls\":[\"bzz-raw://a2ddf9483f89b8a9012bc7714db4547b68a0df5fe3bf953e190d2021377f9811\",\"dweb:/ipfs/QmZcs1fuufGwWYy4fW3puX7ZRrribMMzEyEEL7WVCnrMer\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBQueueRulesetsConfig.sol\":{\"keccak256\":\"0x3ad05bfa31a90070eb4a026a13d508f9a68ca2474c3737bcda97a07307ffa554\",\"urls\":[\"bzz-raw://357f0193da0840e4b012ff1f97c65c8b6f5fea39e323a3777baf2b0625491f12\",\"dweb:/ipfs/QmZkJb8MuZ3wimiV6kry4RMp9ZkUFQA9yhfJDVUWTBWFcq\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/enums/JBApprovalStatus.sol\":{\"keccak256\":\"0x61c69b6bac7d24b566d87cda23a77e4ca9cdb87200b106aba8534cb9a0973e33\",\"urls\":[\"bzz-raw://6a9ca7249de76f77a8252eefe6bd1b63d47952f25a2acfa2c8db967cdff4470c\",\"dweb:/ipfs/QmaxSxptRQNj8bNy96EreENmrnRWdKmhyihBcxyWzBX5BN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBController.sol\":{\"keccak256\":\"0xf577428966a4db4ca17fb73abf2ff2e21cc0e231df2d7247bf410f926d6cb5f7\",\"urls\":[\"bzz-raw://7c1d847382f731b8c464b55ead0ed5c517aa3fa606aaf78b7881aab18108d504\",\"dweb:/ipfs/QmXW3DpPgjYw33A8bMxJFRVZRYjCnWTp28M8sSdPHbDq7E\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectory.sol\":{\"keccak256\":\"0xcb97db460d2948a7f51c660fe0d1b1749047a419027711c476b86ad3573534c5\",\"urls\":[\"bzz-raw://a909c7a3d471054537894dca827e6e018e92ac25299b43026e5b1e335ec4de68\",\"dweb:/ipfs/QmU1GT3F8PNMjSiPPP5cSLLofefHYFJXnywMCdqqM9xUeh\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectoryAccessControl.sol\":{\"keccak256\":\"0x1ea768919979d9f625920c05a5e633739febc822ce14b1e4724d739b19c10fb8\",\"urls\":[\"bzz-raw://7c5391a510bd610a97978245b7306d8d21c79d7c45c15f590ba9b603ea751154\",\"dweb:/ipfs/QmPSJvVWswqzv3bVq422UhA2BybMsiHoYFWGPp5Jh6Xs6a\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBFundAccessLimits.sol\":{\"keccak256\":\"0xfd8ea4cffd289e7fef6e53b5c8983eb6b941de306517f40c047048d3a8a2ca08\",\"urls\":[\"bzz-raw://2765cdee206f8b1b53874448e2481db001cd3706753190cfc9381318c7a7c41c\",\"dweb:/ipfs/QmQ5UYSadtzrb7BcTR93KnAYKXawdyDUG5HjjASV1zbys5\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPayHook.sol\":{\"keccak256\":\"0x9438866782c652c2942f4d114e35f393cd3c8b0334abce8387eed90bca35e8b2\",\"urls\":[\"bzz-raw://cfd99daf57213f92325aad7d7d16e98476d38e870470e95ba01e3ae3cdecc95d\",\"dweb:/ipfs/QmUKKAVGf7ki8BHksr99tFcRW8APveeB5tNH63ctTbbCW8\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPriceFeed.sol\":{\"keccak256\":\"0x4bd84c0f1a5d4729ed709bcddd43f4c50ec4a165ece79780af8dce482ed07d4a\",\"urls\":[\"bzz-raw://62bac4bfb6982fb002f620c77e5c445e62d50241a5aa64a07e51d929f5a42180\",\"dweb:/ipfs/QmWgJUDreVY2BuMX38a1iUUR5kNbMwGnKG3VvurB7oZtuM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPrices.sol\":{\"keccak256\":\"0xb4d5244daa52aafab0c9b8806b7f973afa6a3b298add5966d586d27b78424cfb\",\"urls\":[\"bzz-raw://a819f74455aaa4f679ded378424702f3992608a640d7f943b19938eb4ff711da\",\"dweb:/ipfs/QmSMGvVTsMW3L5YSUyXTKoEsgNpGEutnq4frEZHuDdeDvz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjectUriRegistry.sol\":{\"keccak256\":\"0xc9ab647179d7d0c857fdd881d6ce96f06254739440ed08e85a1c2042218f7c7d\",\"urls\":[\"bzz-raw://8529368f30c98c8d5a69acdbe4ac79e3eeb4afa5a9cd278325c5f2184ef3d50f\",\"dweb:/ipfs/QmfUaozYiAGt1UwBDUEZvon1tEBS5sLPzqpN9dNdjQotPN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjects.sol\":{\"keccak256\":\"0x4ae42a9cc29b517b26d2b9b635deb82c16696b777deeca92dfcad33b0f81c0a0\",\"urls\":[\"bzz-raw://1dcbd860e7d7f05232d90c5e9cfd3d01e2ce986ffcdb053473d8a4d387b1a48a\",\"dweb:/ipfs/QmWKWoSJJbVWDumbnzXJBJyXmAacgC97bxMtchh8te41bn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesetApprovalHook.sol\":{\"keccak256\":\"0x592e95d159494421c6b1bcb362d0cee1df0132921697351304e9cd7af4fbd386\",\"urls\":[\"bzz-raw://5bebfd5fa67c1b6ea16fa2e76e9520e9dfe52a579f48dd94d0c2ec45f78ad178\",\"dweb:/ipfs/QmRUawEGtfYoYSHmHELGhvJoWuMsxLPKtqAXgsrb7fJboP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesets.sol\":{\"keccak256\":\"0x29b56a91e8cd4d3e718e18cd934eccbc22c668d08dc26adb43c958722497d3ab\",\"urls\":[\"bzz-raw://7ae1a723eaf16809b9bd73cd235985801aff85283976be342416fa301c3b4793\",\"dweb:/ipfs/QmZYSY7C9dPvR5EnT8YCjVSy842dBVP3wZdYQ71wyPkx2F\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplitHook.sol\":{\"keccak256\":\"0xeb8dfac7a4b81897a1c3b5d0d853a406bcff33720fb187d5ca5bb3dcc0ba3a12\",\"urls\":[\"bzz-raw://36aaeef6107cfe5b0127e063ea215aac7200f8af02e28a48e61111abd3254688\",\"dweb:/ipfs/QmQ8yQANXnhQCAWBGKsKCDsJ3A8hnTKNg5tyo79GfWXTcV\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplits.sol\":{\"keccak256\":\"0x424e6d1189b9ba7a5d441e7675ae09ff893c13c62b9ddde4dd6bc2690e96c6f3\",\"urls\":[\"bzz-raw://7e30ed7ab1daf20ff324aacfef7150a243b5db496eceaf032c7012ccb3c4227d\",\"dweb:/ipfs/QmRj5EZKmDjJy8tpvKbpz8vPSKHR5C9Q5ENe7oSLij4H8M\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTerminal.sol\":{\"keccak256\":\"0xe440530f1d0cc16578981e1d2e4e13674360c677d19a74a4b08f9f7268c70aee\",\"urls\":[\"bzz-raw://ddea4aeaf523f48a1364a02d2ccb75f3dfd8a2b9af465964e9adf3ce53f4196a\",\"dweb:/ipfs/QmVWhN1Nn9khUN8ctAgh2Ypo2vnFBgDHtDw6S232A6RkFw\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBToken.sol\":{\"keccak256\":\"0xd33757cd3da65a9d66404b7e6ddb7a27b4902885a3498b9db1673c218e9fab2d\",\"urls\":[\"bzz-raw://de28759920dab1db6cfcb4ff2ffae76491be371b791a2a0ec054ff17653872dc\",\"dweb:/ipfs/QmPXnhdxbgoV4dBRJCi9siQYRfrvcJLDtY1rp3H2vtU1Cz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokenUriResolver.sol\":{\"keccak256\":\"0xfa5cb00dcd6085d1ef912d071fe73c63f9478a2cd0f9d8bddaf659b6af2d0967\",\"urls\":[\"bzz-raw://282e4e7c342d65f77cde0e9a08fcaf20ef5cf379c7a48b639842c0ffd0b2afb8\",\"dweb:/ipfs/QmbnN3PEQeZaXdPLT75V1J79kMg7KqSMru37RHrL3z8Yf2\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokens.sol\":{\"keccak256\":\"0x1348b416ebf501409acc9970d46be89ffd076566001ceff9b96fce1b0b2c405d\",\"urls\":[\"bzz-raw://74327019f5174345afed10d9a60caa9ef908382e131882c27588b13be8364b36\",\"dweb:/ipfs/QmZAqB6hFSymTEbjqHWgE4t9NRose9AJh4etGyWnvDkhJt\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/libraries/JBConstants.sol\":{\"keccak256\":\"0x822bef715c9d5803208a2e02f8d14e0ffdb1fb2ea84698c30fd801103be4a3d2\",\"urls\":[\"bzz-raw://476c87d74e31cd43419cce01551158993c311ac47ba5fad5768e26054b3c8a91\",\"dweb:/ipfs/QmdpxoGU6suZAm9FS7R47AwSmHEFjwmf6v56WrfZM4QkJc\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAccountingContext.sol\":{\"keccak256\":\"0x9c47e048a719f784f601df69a583505432217b9868a0244876d277f84dd1ebdf\",\"urls\":[\"bzz-raw://8565f194b87914da9a02af2e760ae2ed2a9d185c6f11229f7035140776d2fec9\",\"dweb:/ipfs/QmPs2fic8W3F5e5zNRwmGmJFjb3JWGPWJ3YUe5o82nQgEn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAfterPayRecordedContext.sol\":{\"keccak256\":\"0xd26c3a774ff38be79064085970454fe2603a23a638c76270d5b1b3829206c3e8\",\"urls\":[\"bzz-raw://3b55dbe3bf1ef625b7ca04efab3de35406e6041d5b3d82c7265469c500e2b702\",\"dweb:/ipfs/QmUdBDo4Lt3mcsFcsXT2mqq3czFwZjQJFPLM89YA2VtD7k\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBCurrencyAmount.sol\":{\"keccak256\":\"0x7f321bbcbd13abfbc8f0d08a5adaaf8ef312db5bb899012fcffb6170fbb962a9\",\"urls\":[\"bzz-raw://bf9301ef1dbb3abda7b492585377617508ba048c6170f21a5e7d2b3c034eb384\",\"dweb:/ipfs/QmcetEFxSYLLNSZzPBpNn3Fc8sFcrFE8A8h12ZSj2tLgxD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBFundAccessLimitGroup.sol\":{\"keccak256\":\"0x9fdaa8d017b72da25f583700a444a86849df053f7fb8eac874ec5139bcf651e5\",\"urls\":[\"bzz-raw://c8e44c49ee444a98424a0dbeb6897a76a0bf00d88a613f62ac2012afdac754ee\",\"dweb:/ipfs/QmdYkAiRi5bXM1YYNkc7BiqimHSFodMGn1cjHR5hcpm4xH\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRuleset.sol\":{\"keccak256\":\"0x03ad7bd257d4ac55ecc42b85156dce1c70eec8572dbf8feb093c033912f305e7\",\"urls\":[\"bzz-raw://9665b4c018cd469f94bec4471222cc9e5fd58ac421a0959f70e72618fe37d55b\",\"dweb:/ipfs/QmSUf6HQv2Ckcoy5tSH1UPdD8vDMerfK29G8kaxmxB3Kow\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetConfig.sol\":{\"keccak256\":\"0x7a57ed3d73bd9457d8e1fb40f5204c364df87cbfdbf42412d5bbc08beabb49c9\",\"urls\":[\"bzz-raw://8b9a83916ee67d32b5f434b35b171c6122bbc4efeaa4fabb8dec2ca4e9e32c6e\",\"dweb:/ipfs/QmNquzUQn6ZvE2wBcMCgru3resV9UNvBWPPetyDChoh8vM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetMetadata.sol\":{\"keccak256\":\"0x7f49fe89eefe848e6af12aa452bd882430ff35e9dd44e9ff3d7be6911496486c\",\"urls\":[\"bzz-raw://136f3baeb71f8ac1c2721eb94b1d469d35cf3fba82f9138760dde6d451d052ef\",\"dweb:/ipfs/QmVeBaYMS9K3rPfneKiVYnFXbp3X8qxrw4qhN4PmuYHppz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetWithMetadata.sol\":{\"keccak256\":\"0x1bcfadf20488f6df65227f8d4d0fbf9b7539456a2389567f7fe3900d23289bc3\",\"urls\":[\"bzz-raw://0a15c399a71e5373f8c0484c6d6b83521eda31e063a2c53e4c5cec4e74550343\",\"dweb:/ipfs/QmQwi8zkjoTVXbK89NeETYimWCacTrNsesJdpLSvGdqMPX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplit.sol\":{\"keccak256\":\"0x0e1351e80cf9967caee90094712a4fc884a83f07df23a844d8cb33ebcd00721e\",\"urls\":[\"bzz-raw://19d5793c08834f2ec1d6942bd43d05042b0ecc351a57235d748a8f2ff74b6638\",\"dweb:/ipfs/QmUWjyNg7x62KsvMwAzNdpmwqCo5qK5ip9pLdshj9B2Kbf\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitGroup.sol\":{\"keccak256\":\"0x8dc98fa9e730bee8bcc0a8acf1bc4db1c9b0edf307d969c9c9caa4d6b8d856d9\",\"urls\":[\"bzz-raw://66f4306e0e69c82033927952564fd617e7c4b29aa8b165d5b53a0ebe3109ea12\",\"dweb:/ipfs/QmQqN1u7FHAdEtEZNRcKvZwYtXEQVQnLd6FMzHESP7wDtx\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitHookContext.sol\":{\"keccak256\":\"0x1cef82bf434f91d518092ea7e57db4a72ce7654f48a7db9bf44882900b6b6623\",\"urls\":[\"bzz-raw://cc5012008ab7e74cf766fe1c202a23e3a73365356bcf1e0b04ec01baf21b204b\",\"dweb:/ipfs/QmSwJvd6Yrg9XZMhjquBcak5sfUswbR5nPEuJBfpjM54VT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTerminalConfig.sol\":{\"keccak256\":\"0x9e31505080d3754b6d7db96095b0545930ef6dbc035b91fcc32fdc76a0e7c2a5\",\"urls\":[\"bzz-raw://f7702ab33a1b713c37e5397a55d8ef089289f4da8034cfe9622cbc69a98c47de\",\"dweb:/ipfs/QmXyiXps4aJyiM7vtDC373QUoqwB4DMETaZzC5cZPJKaAK\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTokenAmount.sol\":{\"keccak256\":\"0xc61593d33d5ec30e695d382948a1b944d01e29a8f2bfd29f75ecebcdbc7816de\",\"urls\":[\"bzz-raw://8992c1e5fca0c2342ecc0e734dfba6a2a752e4c29184784931d0971e44305051\",\"dweb:/ipfs/QmYNcaW3qeCkgAExUaFTq238fgfJuoYCTwjCn7jm94U4dJ\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5ef46daa3b58ef2702279d514780316efaa952915ee1aa3396f041ee2982b0b4\",\"urls\":[\"bzz-raw://2f8f2a76e23b02fc69e8cd24c3cb47da6c7af3a2d6c3a382f8ac25c6e094ade7\",\"dweb:/ipfs/QmPV4ZS4tPVv4mTCf9ejyZ1ai57EEibDRj7mN2ARDCLV5n\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0x7f7a26306c79a65fb8b3b6c757cd74660c532cd8a02e165488e30027dd34ca49\",\"urls\":[\"bzz-raw://d01e0b2b837ee2f628545e54d8715b49c7ef2befd08356c2e7f6c50dde8a1c22\",\"dweb:/ipfs/QmWBAn6y2D1xgftci97Z3qR9tQnkvwQpYwFwkTvDMvqU4i\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"],\"license\":\"MIT\"},\"src/CTDeployer.sol\":{\"keccak256\":\"0x5bcf3bbdacbcade3a43678d92238c65bbdb84ddf5945311b2155f63052bbff46\",\"urls\":[\"bzz-raw://dbc4e2e3e75d52e42f980924abab04c4f160d542d1f12c59dce13435b7b2718e\",\"dweb:/ipfs/Qmb4jyz2Y76kVZShJVsUzyrT8dPp8Yo7xiRADByB5GA77o\"],\"license\":\"MIT\"},\"src/interfaces/ICTDeployer.sol\":{\"keccak256\":\"0x23c4ec623f382c88a7061e11b7e4a32f604aee92788256a77705532c9bc62d82\",\"urls\":[\"bzz-raw://8bf22d2fefd98e2d28191860315d45badd0d13df446de32e3b660001c2862c21\",\"dweb:/ipfs/QmcxVwo45WobQ3JwAhpjmvkDcivyqVnw7kFoaimDY51tj4\"],\"license\":\"MIT\"},\"src/interfaces/ICTPublisher.sol\":{\"keccak256\":\"0x8fab84f363d0a7e7707eb93979b43f5e129b7d9d8221d6d240107fdf3d46da5c\",\"urls\":[\"bzz-raw://016775346d46cb4358eb2c0e29bb6ccc543b5f37cef916e98bc7a079cbd9e894\",\"dweb:/ipfs/Qmdeu2FWQNsd9vC7wZFpryESU6M6kq99EwbBUkg4HoogQ7\"],\"license\":\"MIT\"},\"src/structs/CTAllowedPost.sol\":{\"keccak256\":\"0x1cab9579ed19fea4d490b1de827fd123a8cc7ababd73ed5421351a6f7142a371\",\"urls\":[\"bzz-raw://00695b12ade810d017427a7cf20856dc326bbedcf4548ed28e81a33f09b28ad8\",\"dweb:/ipfs/QmP3UPM4xyiSUnBhkThyVp1Ww8QfqfN7rk3fPx4Gu5Whsm\"],\"license\":\"MIT\"},\"src/structs/CTPost.sol\":{\"keccak256\":\"0xc4d67fc9a0323a2a923521f2fb3042bde046cb8c78fc69d928804ab8f3987038\",\"urls\":[\"bzz-raw://fb4d0a02ada8e751cbd7061f8d7b48705a9442339510232f51595ada0e73612d\",\"dweb:/ipfs/QmbFd4CeMhcY86Ze4izYYdK2xB7tQuwdHxdP7aB5zxy8ka\"],\"license\":\"MIT\"}},\"version\":1}", + "metadata": "{\"compiler\":{\"version\":\"0.8.23+commit.f704f362\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"deployer\",\"type\":\"address\"},{\"internalType\":\"contract ICTPublisher\",\"name\":\"publisher\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CONTROLLER\",\"outputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DEPLOYER\",\"outputs\":[{\"internalType\":\"contract IJB721TiersHookProjectDeployer\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"PUBLISHER\",\"outputs\":[{\"internalType\":\"contract ICTPublisher\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct CTDeployerAllowedPost[]\",\"name\":\"allowedPosts\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint24\",\"name\":\"category\",\"type\":\"uint24\"},{\"internalType\":\"uint104\",\"name\":\"minimumPrice\",\"type\":\"uint104\"},{\"internalType\":\"uint32\",\"name\":\"minimumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"maximumTotalSupply\",\"type\":\"uint32\"},{\"internalType\":\"address[]\",\"name\":\"allowedAddresses\",\"type\":\"address[]\"}]},{\"internalType\":\"string\",\"name\":\"contractUri\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"deployProjectFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"contract IJB721TiersHook\",\"name\":\"hook\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}]}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"controller\":\"The controller that projects are made from.\",\"deployer\":\"The deployer to launch Croptop projects from.\",\"publisher\":\"The croptop publisher.\"}},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"params\":{\"allowedPosts\":\"The type of posts that the project should allow.\",\"contractUri\":\"A link to the collection's metadata.\",\"name\":\"The name of the collection where posts will go.\",\"owner\":\"The address that'll own the project.\",\"projectUri\":\"The metadata URI containing project info.\",\"symbol\":\"The symbol of the collection where posts will go.\",\"terminalConfigurations\":\"The terminals that the network uses to accept payments through.\"},\"returns\":{\"hook\":\"The hook that was created.\",\"projectId\":\"The ID of the newly created project.\"}},\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Make sure only mints can be received.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"CONTROLLER()\":{\"notice\":\"The controller that projects are made from.\"},\"DEPLOYER()\":{\"notice\":\"The deployer to launch Croptop recorded collections from.\"},\"PUBLISHER()\":{\"notice\":\"The Croptop publisher.\"},\"deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)\":{\"notice\":\"Deploy a simple project meant to receive posts from Croptop templates.\"}},\"version\":1}},\"settings\":{\"remappings\":[\"@arbitrum/=node_modules/@arbitrum/\",\"@bananapus/=node_modules/@bananapus/\",\"@chainlink/=node_modules/@chainlink/\",\"@croptop/core/=/\",\"@eth-optimism/=node_modules/@eth-optimism/\",\"@exhausted-pigeon/=node_modules/@exhausted-pigeon/\",\"@offchainlabs/=node_modules/@offchainlabs/\",\"@openzeppelin/=node_modules/@openzeppelin/\",\"@prb/=node_modules/@prb/\",\"@rev-net/=node_modules/@rev-net/\",\"@scroll-tech/=node_modules/@scroll-tech/\",\"@sphinx-labs/contracts/=node_modules/@sphinx-labs/contracts/contracts/foundry/\",\"@uniswap/=node_modules/@uniswap/\",\"base64-sol/=node_modules/base64-sol/\",\"ds-test/=lib/forge-std/lib/ds-test/src/\",\"forge-std/=lib/forge-std/src/\",\"hardhat/=node_modules/hardhat/\",\"solady/=node_modules/solady/\",\"solmate/=node_modules/solmate/\",\"sphinx/=lib/sphinx/packages/contracts/contracts/forge-std/src/\"],\"optimizer\":{\"enabled\":true,\"runs\":100000000},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"compilationTarget\":{\"src/CTDeployer.sol\":\"CTDeployer\"},\"evmVersion\":\"paris\",\"libraries\":{}},\"sources\":{\"node_modules/@bananapus/721-hook/src/interfaces/IJB721Hook.sol\":{\"keccak256\":\"0xc4c1b2da6354c37e67e4463ca3dc652daf98769a7dc1af5b6e8bc31dc11bdc69\",\"urls\":[\"bzz-raw://583553ab050c7a96dbee7ffe8436a0f345617a816331bba0fb3d1c1e77b39110\",\"dweb:/ipfs/QmXj783jhFVdGzFqpiCgGaNjnmDE2qNGEGE7HidhzGgrSR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHook.sol\":{\"keccak256\":\"0x1b17153dcb3901a8d9156976ffb20c1047849ad1ce94c3a1934f7ca012b45bb5\",\"urls\":[\"bzz-raw://e86b10609f4ff4279592a7c185c6b202c0ff2572fad40dcbcfab878dbc735daa\",\"dweb:/ipfs/QmSJE6yTqKuA94BKAixiEFRGUUYhwtngsYDW3VCfrbMzKP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookDeployer.sol\":{\"keccak256\":\"0xdcf34032c2a22a782b7121e777715766cce471e9e8186cb710865de674d646bf\",\"urls\":[\"bzz-raw://00c19707f9fd04b9393a2081a50d69a14ed37d4a8f689c39219da6379aaacb53\",\"dweb:/ipfs/QmPdJYKrEEJxVYYaoV5rVRhoBuxmBTEH7u3J2TZtom1Sof\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookProjectDeployer.sol\":{\"keccak256\":\"0xffcee695bbdf4960b99b905b966ba6225a1909e65397c1f32389e77ec49207d0\",\"urls\":[\"bzz-raw://7aadbb2a046524b164e0886b9deb049823e5b1c92efcf2ad7fd8e22d5a746d51\",\"dweb:/ipfs/QmbhafFJmJ6MUtrSzHqLnshz1PNUz3rgcvB8zif1p8sf7d\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TiersHookStore.sol\":{\"keccak256\":\"0x6f3acee1130717bf1ac5c513cb167a8f121a64c047b505e9aced2b23793b79d7\",\"urls\":[\"bzz-raw://9f4dfe3be9e21c8b5446e9d37e699071f9df257a3c7a2fb8a8791e062617acbc\",\"dweb:/ipfs/QmarDks3DcMyHPVsKdj5qpma5ZBMzH8ti92MY38K76hvSA\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/interfaces/IJB721TokenUriResolver.sol\":{\"keccak256\":\"0xfa599167098f4459320ec4141a98a17b2dfffbce422baa27d8b4e4530f61ece1\",\"urls\":[\"bzz-raw://8b758b161f4c7b520b2c34b4d91e585e961b8f4ca278eebb91d791f7f2f45140\",\"dweb:/ipfs/QmcD9DF7NJ9QykQpT4KPzm4bs3fkjzukdAUWwdU6Atfw85\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721InitTiersConfig.sol\":{\"keccak256\":\"0xff362fcd46992e56996e1b162b129a1d03ca2342a482421f279bd930b7af79dd\",\"urls\":[\"bzz-raw://56a52c0d4461fd1b278789cd31ccc77b5eab9a0d7e2fab5074bae9c8a79d0cb1\",\"dweb:/ipfs/QmagorkFXB4rEq5rfLcoZHu6jtjcMicMBPfVqMQT86xZoB\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721Tier.sol\":{\"keccak256\":\"0x99232aa73d5715977332dc7c93b03552a93259e59ae00e86b4ddc200f06adaf1\",\"urls\":[\"bzz-raw://721c0cf10a29fa11677718faafb3a2ecfcb4fbe4e1c09e70a7fac681c80fcc94\",\"dweb:/ipfs/QmSUR77E9PqnpB5kBcKNz2CGBjG9XL9FH57RWVYu3Q7GMR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TierConfig.sol\":{\"keccak256\":\"0x86e54a0de4deab9d105bf276586aebe256188b193e83eb7a6f6f93e4a29ae9c5\",\"urls\":[\"bzz-raw://04bfcc07d452c26dfc50d3a5eb62df4b3b81e063defd752e0aa5ed049a78eef4\",\"dweb:/ipfs/QmWd5nJHUvZPHxJXkrYCboXaqdtiWWkQG26sNM6qkJuAgD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersHookFlags.sol\":{\"keccak256\":\"0x283d8429f31bd58875c056515aa42abd09c95362bd929e85cfc44a0d92585766\",\"urls\":[\"bzz-raw://9a580b89fe99d9f8e930c58a4d0d63a5ff7c01c79d210af01373d066c9e72ed6\",\"dweb:/ipfs/QmdY1eSGSoTjv4KSdsG4Tm5CzJN6iqk3qTRga5ZWNbejRz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersMintReservesConfig.sol\":{\"keccak256\":\"0x86fe586a05e6d4bc6fab9b68996a7f4b74c5362ca6f24b9d8057ed7e4cd1c5ac\",\"urls\":[\"bzz-raw://0915f17d1f958ab1fe6b214d99ed62f1f858684898c803f1a8a6a557472dd140\",\"dweb:/ipfs/QmUhdnSV8UzkgvbtkYEKHrpyDEmc2aJxW5HQ1gucuxxu5A\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JB721TiersSetDiscountPercentConfig.sol\":{\"keccak256\":\"0x4672eacb6b0cda5e6f5f72ddb91463c52fb90b4df421053e3b40024f19a59954\",\"urls\":[\"bzz-raw://9d8e3a0b35d6b2a6ec66527594263400189b6c766bfd6943c83704380a989aec\",\"dweb:/ipfs/QmUE7NhFWsxjFRzTuRyHJ7oRx3JXD9CnG83t29PjGAhwPR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBDeploy721TiersHookConfig.sol\":{\"keccak256\":\"0x0ce457736946394772afe54d575b68a74269cbf37a250de2d27dca6d9dd45005\",\"urls\":[\"bzz-raw://2010a8f6e19354038d3906ddb174f34464c5f341103313a5c4d628aa7732d5a8\",\"dweb:/ipfs/QmU9m18oWtYNV7UHLcW9kdwE3uzoQuGBe6sASvQTk8GZRL\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchProjectConfig.sol\":{\"keccak256\":\"0x0a8f87072dd6e5dd7c5cd5af7153172275de7e85625aa4a97da4fed65ad5b029\",\"urls\":[\"bzz-raw://b1d230835bf8fa17e8308d5d2ce4c820c4a719f451a65477f75956e100984047\",\"dweb:/ipfs/QmX6BwoYNJx1SssBLcBoPJBsg2Hv6ZP2uErXUvoMrAaQ71\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBLaunchRulesetsConfig.sol\":{\"keccak256\":\"0x0088bc7133e3fae1944247370a4eec227aeae8b371534e1d54439499644c0ede\",\"urls\":[\"bzz-raw://31847d92e9eb5e3125f07c23a651c0972e1784f748c4ce9d0c66853ee892c690\",\"dweb:/ipfs/QmRmoXg2MrkUFkMkgKvU7igkHQjhStbbc6CeiHkLCYAn7P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetConfig.sol\":{\"keccak256\":\"0x06fdbc5c40750b8d81e4c079f86a96f5ce922a0ddbb81ddc5a044aa166723f59\",\"urls\":[\"bzz-raw://b810a5768501951e08c46f1907a7f561a49c4e16f339f1679a493fcddd30cc50\",\"dweb:/ipfs/QmfCF85EAdQCnsixXCdkKb5Xz2bL9dqAoDhmiR1QoBo81P\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBPayDataHookRulesetMetadata.sol\":{\"keccak256\":\"0x087280b3a959933c68ad19acbf07d80f9bbf632d902986c2ff624b6c31a6eeeb\",\"urls\":[\"bzz-raw://a2ddf9483f89b8a9012bc7714db4547b68a0df5fe3bf953e190d2021377f9811\",\"dweb:/ipfs/QmZcs1fuufGwWYy4fW3puX7ZRrribMMzEyEEL7WVCnrMer\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook/src/structs/JBQueueRulesetsConfig.sol\":{\"keccak256\":\"0x3ad05bfa31a90070eb4a026a13d508f9a68ca2474c3737bcda97a07307ffa554\",\"urls\":[\"bzz-raw://357f0193da0840e4b012ff1f97c65c8b6f5fea39e323a3777baf2b0625491f12\",\"dweb:/ipfs/QmZkJb8MuZ3wimiV6kry4RMp9ZkUFQA9yhfJDVUWTBWFcq\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/enums/JBApprovalStatus.sol\":{\"keccak256\":\"0x61c69b6bac7d24b566d87cda23a77e4ca9cdb87200b106aba8534cb9a0973e33\",\"urls\":[\"bzz-raw://6a9ca7249de76f77a8252eefe6bd1b63d47952f25a2acfa2c8db967cdff4470c\",\"dweb:/ipfs/QmaxSxptRQNj8bNy96EreENmrnRWdKmhyihBcxyWzBX5BN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBController.sol\":{\"keccak256\":\"0xf577428966a4db4ca17fb73abf2ff2e21cc0e231df2d7247bf410f926d6cb5f7\",\"urls\":[\"bzz-raw://7c1d847382f731b8c464b55ead0ed5c517aa3fa606aaf78b7881aab18108d504\",\"dweb:/ipfs/QmXW3DpPgjYw33A8bMxJFRVZRYjCnWTp28M8sSdPHbDq7E\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectory.sol\":{\"keccak256\":\"0xcb97db460d2948a7f51c660fe0d1b1749047a419027711c476b86ad3573534c5\",\"urls\":[\"bzz-raw://a909c7a3d471054537894dca827e6e018e92ac25299b43026e5b1e335ec4de68\",\"dweb:/ipfs/QmU1GT3F8PNMjSiPPP5cSLLofefHYFJXnywMCdqqM9xUeh\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBDirectoryAccessControl.sol\":{\"keccak256\":\"0x1ea768919979d9f625920c05a5e633739febc822ce14b1e4724d739b19c10fb8\",\"urls\":[\"bzz-raw://7c5391a510bd610a97978245b7306d8d21c79d7c45c15f590ba9b603ea751154\",\"dweb:/ipfs/QmPSJvVWswqzv3bVq422UhA2BybMsiHoYFWGPp5Jh6Xs6a\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBFundAccessLimits.sol\":{\"keccak256\":\"0xfd8ea4cffd289e7fef6e53b5c8983eb6b941de306517f40c047048d3a8a2ca08\",\"urls\":[\"bzz-raw://2765cdee206f8b1b53874448e2481db001cd3706753190cfc9381318c7a7c41c\",\"dweb:/ipfs/QmQ5UYSadtzrb7BcTR93KnAYKXawdyDUG5HjjASV1zbys5\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPayHook.sol\":{\"keccak256\":\"0x9438866782c652c2942f4d114e35f393cd3c8b0334abce8387eed90bca35e8b2\",\"urls\":[\"bzz-raw://cfd99daf57213f92325aad7d7d16e98476d38e870470e95ba01e3ae3cdecc95d\",\"dweb:/ipfs/QmUKKAVGf7ki8BHksr99tFcRW8APveeB5tNH63ctTbbCW8\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPriceFeed.sol\":{\"keccak256\":\"0x4bd84c0f1a5d4729ed709bcddd43f4c50ec4a165ece79780af8dce482ed07d4a\",\"urls\":[\"bzz-raw://62bac4bfb6982fb002f620c77e5c445e62d50241a5aa64a07e51d929f5a42180\",\"dweb:/ipfs/QmWgJUDreVY2BuMX38a1iUUR5kNbMwGnKG3VvurB7oZtuM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBPrices.sol\":{\"keccak256\":\"0xb4d5244daa52aafab0c9b8806b7f973afa6a3b298add5966d586d27b78424cfb\",\"urls\":[\"bzz-raw://a819f74455aaa4f679ded378424702f3992608a640d7f943b19938eb4ff711da\",\"dweb:/ipfs/QmSMGvVTsMW3L5YSUyXTKoEsgNpGEutnq4frEZHuDdeDvz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjectUriRegistry.sol\":{\"keccak256\":\"0xc9ab647179d7d0c857fdd881d6ce96f06254739440ed08e85a1c2042218f7c7d\",\"urls\":[\"bzz-raw://8529368f30c98c8d5a69acdbe4ac79e3eeb4afa5a9cd278325c5f2184ef3d50f\",\"dweb:/ipfs/QmfUaozYiAGt1UwBDUEZvon1tEBS5sLPzqpN9dNdjQotPN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBProjects.sol\":{\"keccak256\":\"0x4ae42a9cc29b517b26d2b9b635deb82c16696b777deeca92dfcad33b0f81c0a0\",\"urls\":[\"bzz-raw://1dcbd860e7d7f05232d90c5e9cfd3d01e2ce986ffcdb053473d8a4d387b1a48a\",\"dweb:/ipfs/QmWKWoSJJbVWDumbnzXJBJyXmAacgC97bxMtchh8te41bn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesetApprovalHook.sol\":{\"keccak256\":\"0x592e95d159494421c6b1bcb362d0cee1df0132921697351304e9cd7af4fbd386\",\"urls\":[\"bzz-raw://5bebfd5fa67c1b6ea16fa2e76e9520e9dfe52a579f48dd94d0c2ec45f78ad178\",\"dweb:/ipfs/QmRUawEGtfYoYSHmHELGhvJoWuMsxLPKtqAXgsrb7fJboP\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBRulesets.sol\":{\"keccak256\":\"0x29b56a91e8cd4d3e718e18cd934eccbc22c668d08dc26adb43c958722497d3ab\",\"urls\":[\"bzz-raw://7ae1a723eaf16809b9bd73cd235985801aff85283976be342416fa301c3b4793\",\"dweb:/ipfs/QmZYSY7C9dPvR5EnT8YCjVSy842dBVP3wZdYQ71wyPkx2F\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplitHook.sol\":{\"keccak256\":\"0xeb8dfac7a4b81897a1c3b5d0d853a406bcff33720fb187d5ca5bb3dcc0ba3a12\",\"urls\":[\"bzz-raw://36aaeef6107cfe5b0127e063ea215aac7200f8af02e28a48e61111abd3254688\",\"dweb:/ipfs/QmQ8yQANXnhQCAWBGKsKCDsJ3A8hnTKNg5tyo79GfWXTcV\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBSplits.sol\":{\"keccak256\":\"0x424e6d1189b9ba7a5d441e7675ae09ff893c13c62b9ddde4dd6bc2690e96c6f3\",\"urls\":[\"bzz-raw://7e30ed7ab1daf20ff324aacfef7150a243b5db496eceaf032c7012ccb3c4227d\",\"dweb:/ipfs/QmRj5EZKmDjJy8tpvKbpz8vPSKHR5C9Q5ENe7oSLij4H8M\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTerminal.sol\":{\"keccak256\":\"0xe440530f1d0cc16578981e1d2e4e13674360c677d19a74a4b08f9f7268c70aee\",\"urls\":[\"bzz-raw://ddea4aeaf523f48a1364a02d2ccb75f3dfd8a2b9af465964e9adf3ce53f4196a\",\"dweb:/ipfs/QmVWhN1Nn9khUN8ctAgh2Ypo2vnFBgDHtDw6S232A6RkFw\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBToken.sol\":{\"keccak256\":\"0xd33757cd3da65a9d66404b7e6ddb7a27b4902885a3498b9db1673c218e9fab2d\",\"urls\":[\"bzz-raw://de28759920dab1db6cfcb4ff2ffae76491be371b791a2a0ec054ff17653872dc\",\"dweb:/ipfs/QmPXnhdxbgoV4dBRJCi9siQYRfrvcJLDtY1rp3H2vtU1Cz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokenUriResolver.sol\":{\"keccak256\":\"0xfa5cb00dcd6085d1ef912d071fe73c63f9478a2cd0f9d8bddaf659b6af2d0967\",\"urls\":[\"bzz-raw://282e4e7c342d65f77cde0e9a08fcaf20ef5cf379c7a48b639842c0ffd0b2afb8\",\"dweb:/ipfs/QmbnN3PEQeZaXdPLT75V1J79kMg7KqSMru37RHrL3z8Yf2\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/interfaces/IJBTokens.sol\":{\"keccak256\":\"0x1348b416ebf501409acc9970d46be89ffd076566001ceff9b96fce1b0b2c405d\",\"urls\":[\"bzz-raw://74327019f5174345afed10d9a60caa9ef908382e131882c27588b13be8364b36\",\"dweb:/ipfs/QmZAqB6hFSymTEbjqHWgE4t9NRose9AJh4etGyWnvDkhJt\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/libraries/JBConstants.sol\":{\"keccak256\":\"0x822bef715c9d5803208a2e02f8d14e0ffdb1fb2ea84698c30fd801103be4a3d2\",\"urls\":[\"bzz-raw://476c87d74e31cd43419cce01551158993c311ac47ba5fad5768e26054b3c8a91\",\"dweb:/ipfs/QmdpxoGU6suZAm9FS7R47AwSmHEFjwmf6v56WrfZM4QkJc\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAccountingContext.sol\":{\"keccak256\":\"0x9c47e048a719f784f601df69a583505432217b9868a0244876d277f84dd1ebdf\",\"urls\":[\"bzz-raw://8565f194b87914da9a02af2e760ae2ed2a9d185c6f11229f7035140776d2fec9\",\"dweb:/ipfs/QmPs2fic8W3F5e5zNRwmGmJFjb3JWGPWJ3YUe5o82nQgEn\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBAfterPayRecordedContext.sol\":{\"keccak256\":\"0xd26c3a774ff38be79064085970454fe2603a23a638c76270d5b1b3829206c3e8\",\"urls\":[\"bzz-raw://3b55dbe3bf1ef625b7ca04efab3de35406e6041d5b3d82c7265469c500e2b702\",\"dweb:/ipfs/QmUdBDo4Lt3mcsFcsXT2mqq3czFwZjQJFPLM89YA2VtD7k\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBCurrencyAmount.sol\":{\"keccak256\":\"0x7f321bbcbd13abfbc8f0d08a5adaaf8ef312db5bb899012fcffb6170fbb962a9\",\"urls\":[\"bzz-raw://bf9301ef1dbb3abda7b492585377617508ba048c6170f21a5e7d2b3c034eb384\",\"dweb:/ipfs/QmcetEFxSYLLNSZzPBpNn3Fc8sFcrFE8A8h12ZSj2tLgxD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBFundAccessLimitGroup.sol\":{\"keccak256\":\"0x9fdaa8d017b72da25f583700a444a86849df053f7fb8eac874ec5139bcf651e5\",\"urls\":[\"bzz-raw://c8e44c49ee444a98424a0dbeb6897a76a0bf00d88a613f62ac2012afdac754ee\",\"dweb:/ipfs/QmdYkAiRi5bXM1YYNkc7BiqimHSFodMGn1cjHR5hcpm4xH\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRuleset.sol\":{\"keccak256\":\"0x03ad7bd257d4ac55ecc42b85156dce1c70eec8572dbf8feb093c033912f305e7\",\"urls\":[\"bzz-raw://9665b4c018cd469f94bec4471222cc9e5fd58ac421a0959f70e72618fe37d55b\",\"dweb:/ipfs/QmSUf6HQv2Ckcoy5tSH1UPdD8vDMerfK29G8kaxmxB3Kow\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetConfig.sol\":{\"keccak256\":\"0x7a57ed3d73bd9457d8e1fb40f5204c364df87cbfdbf42412d5bbc08beabb49c9\",\"urls\":[\"bzz-raw://8b9a83916ee67d32b5f434b35b171c6122bbc4efeaa4fabb8dec2ca4e9e32c6e\",\"dweb:/ipfs/QmNquzUQn6ZvE2wBcMCgru3resV9UNvBWPPetyDChoh8vM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetMetadata.sol\":{\"keccak256\":\"0x7f49fe89eefe848e6af12aa452bd882430ff35e9dd44e9ff3d7be6911496486c\",\"urls\":[\"bzz-raw://136f3baeb71f8ac1c2721eb94b1d469d35cf3fba82f9138760dde6d451d052ef\",\"dweb:/ipfs/QmVeBaYMS9K3rPfneKiVYnFXbp3X8qxrw4qhN4PmuYHppz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBRulesetWithMetadata.sol\":{\"keccak256\":\"0x1bcfadf20488f6df65227f8d4d0fbf9b7539456a2389567f7fe3900d23289bc3\",\"urls\":[\"bzz-raw://0a15c399a71e5373f8c0484c6d6b83521eda31e063a2c53e4c5cec4e74550343\",\"dweb:/ipfs/QmQwi8zkjoTVXbK89NeETYimWCacTrNsesJdpLSvGdqMPX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplit.sol\":{\"keccak256\":\"0x0e1351e80cf9967caee90094712a4fc884a83f07df23a844d8cb33ebcd00721e\",\"urls\":[\"bzz-raw://19d5793c08834f2ec1d6942bd43d05042b0ecc351a57235d748a8f2ff74b6638\",\"dweb:/ipfs/QmUWjyNg7x62KsvMwAzNdpmwqCo5qK5ip9pLdshj9B2Kbf\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitGroup.sol\":{\"keccak256\":\"0x8dc98fa9e730bee8bcc0a8acf1bc4db1c9b0edf307d969c9c9caa4d6b8d856d9\",\"urls\":[\"bzz-raw://66f4306e0e69c82033927952564fd617e7c4b29aa8b165d5b53a0ebe3109ea12\",\"dweb:/ipfs/QmQqN1u7FHAdEtEZNRcKvZwYtXEQVQnLd6FMzHESP7wDtx\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBSplitHookContext.sol\":{\"keccak256\":\"0x1cef82bf434f91d518092ea7e57db4a72ce7654f48a7db9bf44882900b6b6623\",\"urls\":[\"bzz-raw://cc5012008ab7e74cf766fe1c202a23e3a73365356bcf1e0b04ec01baf21b204b\",\"dweb:/ipfs/QmSwJvd6Yrg9XZMhjquBcak5sfUswbR5nPEuJBfpjM54VT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTerminalConfig.sol\":{\"keccak256\":\"0x9e31505080d3754b6d7db96095b0545930ef6dbc035b91fcc32fdc76a0e7c2a5\",\"urls\":[\"bzz-raw://f7702ab33a1b713c37e5397a55d8ef089289f4da8034cfe9622cbc69a98c47de\",\"dweb:/ipfs/QmXyiXps4aJyiM7vtDC373QUoqwB4DMETaZzC5cZPJKaAK\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core/src/structs/JBTokenAmount.sol\":{\"keccak256\":\"0xc61593d33d5ec30e695d382948a1b944d01e29a8f2bfd29f75ecebcdbc7816de\",\"urls\":[\"bzz-raw://8992c1e5fca0c2342ecc0e734dfba6a2a752e4c29184784931d0971e44305051\",\"dweb:/ipfs/QmYNcaW3qeCkgAExUaFTq238fgfJuoYCTwjCn7jm94U4dJ\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5ef46daa3b58ef2702279d514780316efaa952915ee1aa3396f041ee2982b0b4\",\"urls\":[\"bzz-raw://2f8f2a76e23b02fc69e8cd24c3cb47da6c7af3a2d6c3a382f8ac25c6e094ade7\",\"dweb:/ipfs/QmPV4ZS4tPVv4mTCf9ejyZ1ai57EEibDRj7mN2ARDCLV5n\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0x7f7a26306c79a65fb8b3b6c757cd74660c532cd8a02e165488e30027dd34ca49\",\"urls\":[\"bzz-raw://d01e0b2b837ee2f628545e54d8715b49c7ef2befd08356c2e7f6c50dde8a1c22\",\"dweb:/ipfs/QmWBAn6y2D1xgftci97Z3qR9tQnkvwQpYwFwkTvDMvqU4i\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"],\"license\":\"MIT\"},\"src/CTDeployer.sol\":{\"keccak256\":\"0xb2194d3dfb7fe00938fc81138312ee2d1c9d8a6f85d7b855ca6b4699d352eaaf\",\"urls\":[\"bzz-raw://8c952db48946251c34d3a7ed0e788ef9b429a721c63c8d1597987c6c8ccefa33\",\"dweb:/ipfs/QmS1jTjxQgEuD1gfYwz5xAyo1Rt19RnQkKtMy8s4X8uXnF\"],\"license\":\"MIT\"},\"src/interfaces/ICTDeployer.sol\":{\"keccak256\":\"0x6106eeb42e2e55cd089821b4a40318baec5d54da314438aadbe5e665d392808a\",\"urls\":[\"bzz-raw://ce2f0be916ebdf5bb083d0b3c824fb9f3f580b5f573fd76e40be99af589b4a88\",\"dweb:/ipfs/QmUG7naVkzKSBxeoqk3Y4rn2sVz8ckfChpDeQtq2X13w14\"],\"license\":\"MIT\"},\"src/interfaces/ICTPublisher.sol\":{\"keccak256\":\"0x8fab84f363d0a7e7707eb93979b43f5e129b7d9d8221d6d240107fdf3d46da5c\",\"urls\":[\"bzz-raw://016775346d46cb4358eb2c0e29bb6ccc543b5f37cef916e98bc7a079cbd9e894\",\"dweb:/ipfs/Qmdeu2FWQNsd9vC7wZFpryESU6M6kq99EwbBUkg4HoogQ7\"],\"license\":\"MIT\"},\"src/structs/CTAllowedPost.sol\":{\"keccak256\":\"0x1cab9579ed19fea4d490b1de827fd123a8cc7ababd73ed5421351a6f7142a371\",\"urls\":[\"bzz-raw://00695b12ade810d017427a7cf20856dc326bbedcf4548ed28e81a33f09b28ad8\",\"dweb:/ipfs/QmP3UPM4xyiSUnBhkThyVp1Ww8QfqfN7rk3fPx4Gu5Whsm\"],\"license\":\"MIT\"},\"src/structs/CTDeployerAllowedPost.sol\":{\"keccak256\":\"0xd5d637c9289810ab017c49cac4eb7a7fe531d014dd579b5bfed708a7305430be\",\"urls\":[\"bzz-raw://2bd3afca6d836dffda1aae775dc29d89f8542faa49855877314ae8412126e6ee\",\"dweb:/ipfs/QmSmF1Csz1AjXkZHW2SKw5bSwYq3runmzi88N5GmkkwwUZ\"],\"license\":\"MIT\"},\"src/structs/CTPost.sol\":{\"keccak256\":\"0xc4d67fc9a0323a2a923521f2fb3042bde046cb8c78fc69d928804ab8f3987038\",\"urls\":[\"bzz-raw://fb4d0a02ada8e751cbd7061f8d7b48705a9442339510232f51595ada0e73612d\",\"dweb:/ipfs/QmbFd4CeMhcY86Ze4izYYdK2xB7tQuwdHxdP7aB5zxy8ka\"],\"license\":\"MIT\"}},\"version\":1}", "args": [ "0x219A5cE6d1c512D5b050ad2E3d380b8746BE0Cb8", - "0x0Fa5747B59042c9C2A5A9C68C22919fa00468141", + "0x0b41a8Be7E30a01A7367e06601eD204c469eF94D", "0xDd0B2C80A18617F9428c1e9b096fE2DcE222d5F8" ], - "bytecode": "0x60e06040523480156200001157600080fd5b5060405162001ae038038062001ae083398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c0516119cf6200011160003960008181610127015261074f01526000818160db015261040701526000818161014e015281816101740152818161068901526107bb01526119cf6000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100d6578063dbfbe5da14610122578063ee0fc1211461014957600080fd5b8063150b7a021461006c57806328069df2146100b5575b600080fd5b61007f61007a36600461091b565b610170565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004610b5e565b610285565b6040519081526020016100ac565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102019190610c6f565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461023857600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561025957600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b604080516001808252818301909252600091829190816020015b6103686040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b81526020019060019003908161029f57905050905069d3c21bcecceda10000008160008151811061039b5761039b610c93565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee816000815181106103e3576103e3610c93565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808881526020018781526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018981526020016040518060800160405280600067ffffffffffffffff8111156104dd576104dd610a06565b60405190808252806020026020018201604052801561059a57816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816104fb5790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018f8f906106499190610cfa565b81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106c794939291906115c4565b6020604051808303816000875af11580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a919061175d565b915085156107b9576040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610786908a908a90600401611845565b600060405180830381600087803b1580156107a057600080fd5b505af11580156107b4573d6000803e3d6000fd5b505050505b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610c6f565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8d811660248301526044820185905291909116906323b872dd90606401600060405180830381600087803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b50505050509998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461090857600080fd5b50565b8035610916816108e6565b919050565b60008060008060006080868803121561093357600080fd5b853561093e816108e6565b9450602086013561094e816108e6565b935060408601359250606086013567ffffffffffffffff8082111561097257600080fd5b818801915088601f83011261098657600080fd5b81358181111561099557600080fd5b8960208285010111156109a757600080fd5b9699959850939650602001949392505050565b60008083601f8401126109cc57600080fd5b50813567ffffffffffffffff8111156109e457600080fd5b6020830191508360208260051b85010111156109ff57600080fd5b9250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610a5857610a58610a06565b60405290565b6040516060810167ffffffffffffffff81118282101715610a5857610a58610a06565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ac857610ac8610a06565b604052919050565b600082601f830112610ae157600080fd5b813567ffffffffffffffff811115610afb57610afb610a06565b610b2c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610a81565b818152846020838601011115610b4157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600080600080600060e08a8c031215610b7c57600080fd5b610b858a61090b565b985060208a013567ffffffffffffffff80821115610ba257600080fd5b610bae8d838e016109ba565b909a50985060408c0135915080821115610bc757600080fd5b610bd38d838e01610ad0565b975060608c0135915080821115610be957600080fd5b610bf58d838e016109ba565b909750955060808c0135915080821115610c0e57600080fd5b610c1a8d838e01610ad0565b945060a08c0135915080821115610c3057600080fd5b610c3c8d838e01610ad0565b935060c08c0135915080821115610c5257600080fd5b50610c5f8c828d01610ad0565b9150509295985092959850929598565b600060208284031215610c8157600080fd5b8151610c8c816108e6565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600067ffffffffffffffff821115610cdc57610cdc610a06565b5060051b60200190565b803563ffffffff8116811461091657600080fd5b6000610d0d610d0884610cc2565b610a81565b80848252602080830192508560051b850136811115610d2b57600080fd5b855b81811015610e5157803567ffffffffffffffff80821115610d4e5760008081fd5b81890191506040808336031215610d655760008081fd5b610d6d610a35565b8335610d78816108e6565b81528387013583811115610d8c5760008081fd5b939093019236601f850112610da357600092508283fd5b83359250610db3610d0884610cc2565b83815260609384028501880193888201919036861115610dd35760008081fd5b958901955b85871015610e3b57808736031215610df05760008081fd5b610df8610a5e565b8735610e03816108e6565b8152878b013560ff81168114610e195760008081fd5b818c0152610e28888701610ce6565b8187015283529586019591890191610dd8565b5082890152508852505050938201938201610d2d565b50919695505050505050565b6000815180845260005b81811015610e8357602081850181015186830182015201610e67565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b82811015610fce57845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101610ee3565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611035602084018261ffff169052565b50604081015161104d604084018263ffffffff169052565b506060810151611061606084018215159052565b506080810151611075608084018215159052565b5060a081015161108960a084018215159052565b5060c081015161109d60c084018215159052565b5060e08101516110b160e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561121b5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c09092019160010161119d565b50509c88019c965050509285019250600101611148565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156112a057815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff168388015260409096019590820190600101611255565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b8481101561136a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261133883880182611240565b92505050606080830151925085820381870152506113568183611240565b9a86019a94505050908301906001016112c8565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b8181101561143e5786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b019591840191600101611406565b50509d89019d97505050938601935050600101611395565b6000608082516080855261146d6080860182610e5d565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b8281101561158b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a080820151610300919061154082870182611018565b505060c0820151816102c086015261155a8286018261112a565b91505060e082015191508381036102e085015261157781836112ab565b968801969588019593505050600101611497565b506040890151965089810360408b01526115a58188611377565b96505050505050506060830151848203606086015261027c8282610e5d565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526115ff6101e0850183610e5d565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261163b8483610e5d565b935060408901519150808685030160c08701526116588483610e5d565b93506060890151915061168360e087018373ffffffffffffffffffffffffffffffffffffffff169052565b60808901519150808685030161010087015261169f8483610e5d565b935060a089015191508086850301610120870152506116be8382610ec1565b92505060c08701516116e961014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611724828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b505082810360408401526117388186611456565b91505061027c606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60006020828403121561176f57600080fd5b5051919050565b80356cffffffffffffffffffffffffff8116811461091657600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126117c857600080fd5b830160208101925035905067ffffffffffffffff8111156117e857600080fd5b8060051b36038213156109ff57600080fd5b8183526000602080850194508260005b858110156112a057813561181d816108e6565b73ffffffffffffffffffffffffffffffffffffffff168752958201959082019060010161180a565b60208082528181018390526000906040808401600586901b8501820187855b8881101561198b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc088840301845281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff418b36030181126118c557600080fd5b8a0160c081356118d4816108e6565b73ffffffffffffffffffffffffffffffffffffffff1685528188013562ffffff811680821461190257600080fd5b868a015250611912828801611776565b6cffffffffffffffffffffffffff16878601526060611932838201610ce6565b63ffffffff16908601526080611949838201610ce6565b63ffffffff169086015260a061196183820184611793565b9350828288015261197583880185836117fa565b978a019796505050928701925050600101611864565b50909897505050505050505056fea264697066735822122029914f24dcb2aed1ea328417910b2890afe68be8fde4c0fb9e5100c562be942464736f6c63430008170033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100d6578063dbfbe5da14610122578063ee0fc1211461014957600080fd5b8063150b7a021461006c57806328069df2146100b5575b600080fd5b61007f61007a36600461091b565b610170565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004610b5e565b610285565b6040519081526020016100ac565b6100fd7f0000000000000000000000000fa5747b59042c9c2a5a9c68c22919fa0046814181565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6100fd7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f881565b6100fd7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb881565b60007f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102019190610c6f565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461023857600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561025957600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b604080516001808252818301909252600091829190816020015b6103686040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b81526020019060019003908161029f57905050905069d3c21bcecceda10000008160008151811061039b5761039b610c93565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee816000815181106103e3576103e3610c93565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f0000000000000000000000000fa5747b59042c9c2a5a9c68c22919fa0046814173ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808881526020018781526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018981526020016040518060800160405280600067ffffffffffffffff8111156104dd576104dd610a06565b60405190808252806020026020018201604052801561059a57816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816104fb5790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018f8f906106499190610cfa565b81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb86040518563ffffffff1660e01b81526004016106c794939291906115c4565b6020604051808303816000875af11580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a919061175d565b915085156107b9576040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8169063441e4d3490610786908a908a90600401611845565b600060405180830381600087803b1580156107a057600080fd5b505af11580156107b4573d6000803e3d6000fd5b505050505b7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610c6f565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8d811660248301526044820185905291909116906323b872dd90606401600060405180830381600087803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b50505050509998505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461090857600080fd5b50565b8035610916816108e6565b919050565b60008060008060006080868803121561093357600080fd5b853561093e816108e6565b9450602086013561094e816108e6565b935060408601359250606086013567ffffffffffffffff8082111561097257600080fd5b818801915088601f83011261098657600080fd5b81358181111561099557600080fd5b8960208285010111156109a757600080fd5b9699959850939650602001949392505050565b60008083601f8401126109cc57600080fd5b50813567ffffffffffffffff8111156109e457600080fd5b6020830191508360208260051b85010111156109ff57600080fd5b9250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610a5857610a58610a06565b60405290565b6040516060810167ffffffffffffffff81118282101715610a5857610a58610a06565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ac857610ac8610a06565b604052919050565b600082601f830112610ae157600080fd5b813567ffffffffffffffff811115610afb57610afb610a06565b610b2c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610a81565b818152846020838601011115610b4157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600080600080600060e08a8c031215610b7c57600080fd5b610b858a61090b565b985060208a013567ffffffffffffffff80821115610ba257600080fd5b610bae8d838e016109ba565b909a50985060408c0135915080821115610bc757600080fd5b610bd38d838e01610ad0565b975060608c0135915080821115610be957600080fd5b610bf58d838e016109ba565b909750955060808c0135915080821115610c0e57600080fd5b610c1a8d838e01610ad0565b945060a08c0135915080821115610c3057600080fd5b610c3c8d838e01610ad0565b935060c08c0135915080821115610c5257600080fd5b50610c5f8c828d01610ad0565b9150509295985092959850929598565b600060208284031215610c8157600080fd5b8151610c8c816108e6565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600067ffffffffffffffff821115610cdc57610cdc610a06565b5060051b60200190565b803563ffffffff8116811461091657600080fd5b6000610d0d610d0884610cc2565b610a81565b80848252602080830192508560051b850136811115610d2b57600080fd5b855b81811015610e5157803567ffffffffffffffff80821115610d4e5760008081fd5b81890191506040808336031215610d655760008081fd5b610d6d610a35565b8335610d78816108e6565b81528387013583811115610d8c5760008081fd5b939093019236601f850112610da357600092508283fd5b83359250610db3610d0884610cc2565b83815260609384028501880193888201919036861115610dd35760008081fd5b958901955b85871015610e3b57808736031215610df05760008081fd5b610df8610a5e565b8735610e03816108e6565b8152878b013560ff81168114610e195760008081fd5b818c0152610e28888701610ce6565b8187015283529586019591890191610dd8565b5082890152508852505050938201938201610d2d565b50919695505050505050565b6000815180845260005b81811015610e8357602081850181015186830182015201610e67565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b82811015610fce57845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101610ee3565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611035602084018261ffff169052565b50604081015161104d604084018263ffffffff169052565b506060810151611061606084018215159052565b506080810151611075608084018215159052565b5060a081015161108960a084018215159052565b5060c081015161109d60c084018215159052565b5060e08101516110b160e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561121b5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c09092019160010161119d565b50509c88019c965050509285019250600101611148565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156112a057815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff168388015260409096019590820190600101611255565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b8481101561136a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261133883880182611240565b92505050606080830151925085820381870152506113568183611240565b9a86019a94505050908301906001016112c8565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611232578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b8181101561143e5786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b019591840191600101611406565b50509d89019d97505050938601935050600101611395565b6000608082516080855261146d6080860182610e5d565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b8281101561158b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a080820151610300919061154082870182611018565b505060c0820151816102c086015261155a8286018261112a565b91505060e082015191508381036102e085015261157781836112ab565b968801969588019593505050600101611497565b506040890151965089810360408b01526115a58188611377565b96505050505050506060830151848203606086015261027c8282610e5d565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526115ff6101e0850183610e5d565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261163b8483610e5d565b935060408901519150808685030160c08701526116588483610e5d565b93506060890151915061168360e087018373ffffffffffffffffffffffffffffffffffffffff169052565b60808901519150808685030161010087015261169f8483610e5d565b935060a089015191508086850301610120870152506116be8382610ec1565b92505060c08701516116e961014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611724828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b505082810360408401526117388186611456565b91505061027c606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60006020828403121561176f57600080fd5b5051919050565b80356cffffffffffffffffffffffffff8116811461091657600080fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126117c857600080fd5b830160208101925035905067ffffffffffffffff8111156117e857600080fd5b8060051b36038213156109ff57600080fd5b8183526000602080850194508260005b858110156112a057813561181d816108e6565b73ffffffffffffffffffffffffffffffffffffffff168752958201959082019060010161180a565b60208082528181018390526000906040808401600586901b8501820187855b8881101561198b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc088840301845281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff418b36030181126118c557600080fd5b8a0160c081356118d4816108e6565b73ffffffffffffffffffffffffffffffffffffffff1685528188013562ffffff811680821461190257600080fd5b868a015250611912828801611776565b6cffffffffffffffffffffffffff16878601526060611932838201610ce6565b63ffffffff16908601526080611949838201610ce6565b63ffffffff169086015260a061196183820184611793565b9350828288015261197583880185836117fa565b978a019796505050928701925050600101611864565b50909897505050505050505056fea264697066735822122029914f24dcb2aed1ea328417910b2890afe68be8fde4c0fb9e5100c562be942464736f6c63430008170033", + "bytecode": "0x60e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f0000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d81565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f881565b6101197f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb881565b60007f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f0000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d73ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb86040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb873ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033", "devdoc": { "kind": "dev", "methods": { @@ -405,7 +298,7 @@ "publisher": "The croptop publisher." } }, - "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)": { + "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)": { "params": { "allowedPosts": "The type of posts that the project should allow.", "contractUri": "A link to the collection's metadata.", @@ -416,6 +309,7 @@ "terminalConfigurations": "The terminals that the network uses to accept payments through." }, "returns": { + "hook": "The hook that was created.", "projectId": "The ID of the newly created project." } }, @@ -437,13 +331,13 @@ "PUBLISHER()": { "notice": "The Croptop publisher." }, - "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(address,uint24,uint104,uint32,uint32,address[])[],string,string,string)": { + "deployProjectFor(address,(address,(address,uint8,uint32)[])[],string,(uint24,uint104,uint32,uint32,address[])[],string,string,string)": { "notice": "Deploy a simple project meant to receive posts from Croptop templates." } }, "version": 1 }, - "gitCommit": "16734148f27d14bbd70bf0ed9971692913574a0a", + "gitCommit": "95474c408eb80f99d9b5c5dc926d9372c5b46419", "sourceName": "src/CTDeployer.sol", "chainId": "11155111", "linkReferences": {}, diff --git a/deployments/croptop-core-testnet/sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json b/deployments/croptop-core-testnet/sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json new file mode 100644 index 0000000..d1216c3 --- /dev/null +++ b/deployments/croptop-core-testnet/sepolia/execution/7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653.json @@ -0,0 +1,221 @@ +{ + "_format": "sphinx-sol-execution-artifact-1", + "transactions": [ + { + "receipt": { + "blockHash": "0xf822e7a736d82fffcdd112cb5f63e1640d5e4a156a47a4a06fa591291ae5b2fa", + "blockNumber": 6723613, + "contractAddress": null, + "cumulativeGasUsed": "8870537", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasPrice": "303329034", + "gasUsed": "176675", + "hash": "0x1052a48444a0478a4fc7d1c13cf61bdde96268e92936fe05eeb7d72e0c642249", + "index": 58, + "logs": [ + { + "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "blockHash": "0xf822e7a736d82fffcdd112cb5f63e1640d5e4a156a47a4a06fa591291ae5b2fa", + "blockNumber": 6723613, + "data": "0x0000000000000000000000000000000000000000000000000000000000000000", + "index": 112, + "topics": [ + "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", + "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", + "0x0b75bdf4030df6f3b422fb53cea63a75b7a05a3a73538d1827bea4c324ace630" + ], + "transactionHash": "0x1052a48444a0478a4fc7d1c13cf61bdde96268e92936fe05eeb7d72e0c642249", + "transactionIndex": 58 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0xf822e7a736d82fffcdd112cb5f63e1640d5e4a156a47a4a06fa591291ae5b2fa", + "blockNumber": 6723613, + "data": "0x000000000000000000000000a2ea7657440875bf916cbfc0cfa88f13e38ad463000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000", + "index": 113, + "topics": [ + "0x382c7aec02462c9b086aba9a7f8dbb1fb8bf336e7b624b0149eeca6726d0fb4a", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", + "0x0000000000000000000000000000000000000000000000000000000000000004" + ], + "transactionHash": "0x1052a48444a0478a4fc7d1c13cf61bdde96268e92936fe05eeb7d72e0c642249", + "transactionIndex": 58 + } + ], + "logsBloom": "0x000000000000000000000000000000080000000000000000000000000000000000800000008000000000040000400200000000000000000000000000000000000040000000000000000000000408010000000000000000000000021000000000080000000000000000000000400000000000000000000000000000000000000000000000040000000001000000000000000000000000000000000400000000000040000000000000000000000000000020000000000000001020000000000000000000020008000000000000000000000000000080000000000000000000020000000000000000000000000000000000000000000000a0000000000000000000", + "status": 1, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" + }, + "response": { + "accessList": [], + "blockNumber": 6723613, + "blockHash": "0xf822e7a736d82fffcdd112cb5f63e1640d5e4a156a47a4a06fa591291ae5b2fa", + "chainId": "11155111", + "data": "0xbe6002c200000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000003448f38f8357664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000aa36a70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000100000000000000000000000000d2403a40704f9ceb20673fc1ab41e54a57b1d52600000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce49600000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000002000000000000000000000000a2ea7657440875bf916cbfc0cfa88f13e38ad46300000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035e31ca7176e48904a4b25caba1c705fef0093fd88c3003a69762db6cb958f61009bae7ed631f337f22f6db1111de450a24e71903d7506a195a1771f4aa0ae02875bb4e2308d9ba2dfd2306c11e3ef6a8f1b40ae9f18bf1a90c74e928db178d640000000000000000000000000000000000000000000000000000000000000041318a8592b87bc679f193eaed94fbdf9aaddd6beed718ca79935e8a7acb651d3917c9ea79652056ab2facb2f5904029175ec09b28e67a5a2f93365152e7dfe91d1b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasLimit": "188968", + "gasPrice": "303329034", + "hash": "0x1052a48444a0478a4fc7d1c13cf61bdde96268e92936fe05eeb7d72e0c642249", + "maxFeePerGas": "489409414", + "maxPriorityFeePerGas": "7126094", + "nonce": 135, + "signature": { + "networkV": null, + "r": "0xc9b8e6cf8fe01be2d40833879353c63a6e46b5ce90b09c3b8cb4e17acd8bbddc", + "s": "0x29fe47075939cc7b63a5fdde56e1afcc4585f32e134ad02aa4a6a7c491cd7a4f", + "v": 27 + }, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "type": 2, + "value": "0" + } + }, + { + "receipt": { + "blockHash": "0x891c402af16644607276af464c0d607f0640a63cd7b08b995da7e755573589d2", + "blockNumber": 6723615, + "contractAddress": null, + "cumulativeGasUsed": "15673888", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasPrice": "301946493", + "gasUsed": "1758346", + "hash": "0xa4f46c01787afe2cc8a98399960ae32cd96e677ec0c4443a50189444ef613210", + "index": 84, + "logs": [ + { + "address": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "blockHash": "0x891c402af16644607276af464c0d607f0640a63cd7b08b995da7e755573589d2", + "blockNumber": 6723615, + "data": "0x0000000000000000000000000000000000000000000000000000000000000000", + "index": 113, + "topics": [ + "0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d", + "0x0000000000000000000000000c1c9049564269275059032fb484aa2e7ab779af", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496", + "0x2370cc0aa95798d03dbbf1d3f160a4e45d9b9dd12a61b27373fad5b3692ada45" + ], + "transactionHash": "0xa4f46c01787afe2cc8a98399960ae32cd96e677ec0c4443a50189444ef613210", + "transactionIndex": 84 + }, + { + "address": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", + "blockHash": "0x891c402af16644607276af464c0d607f0640a63cd7b08b995da7e755573589d2", + "blockNumber": 6723615, + "data": "0x", + "index": 114, + "topics": [ + "0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8", + "0x00000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496" + ], + "transactionHash": "0xa4f46c01787afe2cc8a98399960ae32cd96e677ec0c4443a50189444ef613210", + "transactionIndex": 84 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0x891c402af16644607276af464c0d607f0640a63cd7b08b995da7e755573589d2", + "blockNumber": 6723615, + "data": "0x0000000000000000000000000000000000000000000000000000000000000001", + "index": 115, + "topics": [ + "0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" + ], + "transactionHash": "0xa4f46c01787afe2cc8a98399960ae32cd96e677ec0c4443a50189444ef613210", + "transactionIndex": 84 + }, + { + "address": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "blockHash": "0x891c402af16644607276af464c0d607f0640a63cd7b08b995da7e755573589d2", + "blockNumber": 6723615, + "data": "0x", + "index": 116, + "topics": [ + "0x4383d976757d67ca920616be0b6430a681ea9d3dcce8d6d61d4603ca4a9bff63", + "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653" + ], + "transactionHash": "0xa4f46c01787afe2cc8a98399960ae32cd96e677ec0c4443a50189444ef613210", + "transactionIndex": 84 + } + ], + "logsBloom": "0x00000000000010000000000000080408000000000000000000000000000000000080000000800000000004000040020000000000000000000000000000000000000000000000200000000000040001000000000000000000000002000000000000000000000000000000000040000000000000000000000000000000000000000000000004000000000100000000000000000000000000000000000000000000004000800000000000001000000000002200000020000000100000000004000000000002000800000000000000001080000000000000000000000000000002000000000000000008000000000000000200000000000080000000000008000000", + "status": 1, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463" + }, + "response": { + "accessList": [], + "blockNumber": 6723615, + "blockHash": "0x891c402af16644607276af464c0d607f0640a63cd7b08b995da7e755573589d2", + "chainId": "11155111", + "data": "0xbe6002c200000000000000000000000046ffe3217411d15e56dbdb017fe3ac8eb78ce496000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000020a4e65ec46d00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001fc00000000000000000000000000000000000000000000000000000000000aa36a70000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000001ee00000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001db13b00000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000001de65f4445504c4f5945525f53414c545f000000000000000000000000000000000060e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb80000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035ad92ca1fd842a52372653d349d43e2525a999e6afa4984240b1e44d45c5ca854855c914fc88b177cdb1dde512d41e4a9f1995fb601196f9cab7f5ff0dee764c75bb4e2308d9ba2dfd2306c11e3ef6a8f1b40ae9f18bf1a90c74e928db178d6400000000000000000000000000000000000000000000000000000000", + "from": "0x0c1c9049564269275059032Fb484Aa2e7Ab779af", + "gasLimit": "2305169", + "gasPrice": "301946493", + "hash": "0xa4f46c01787afe2cc8a98399960ae32cd96e677ec0c4443a50189444ef613210", + "maxFeePerGas": "591357124", + "maxPriorityFeePerGas": "7126094", + "nonce": 136, + "signature": { + "networkV": null, + "r": "0x6285f6032daa1f427e2d15640c4055d11220ef9adfdfcfeca60ec55b5ef01d52", + "s": "0x45f1718fb4651893ad29dd1a92a4fc4e9280cdcae5977ce7392b6bc3609c5b1f", + "v": 28 + }, + "to": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "type": 2, + "value": "0" + } + } + ], + "merkleRoot": "0x7664a18b1f521da2b084f9636f40fc61f291da65860e33e3201cc41e966d8653", + "solcInputHashes": [ + "c8660e6ab664b4186505e261472223cd" + ], + "safeAddress": "0xD2403A40704F9cEB20673fc1Ab41E54A57B1d526", + "moduleAddress": "0x46ffE3217411D15E56DBdb017Fe3aC8eB78CE496", + "executorAddress": "0xA2eA7657440875bF916CBFC0cfA88F13e38aD463", + "nonce": "4", + "chainId": "11155111", + "actions": [ + { + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "value": "0", + "txData": "0x5f4445504c4f5945525f53414c545f000000000000000000000000000000000060e06040523480156200001157600080fd5b5060405162001d6638038062001d6683398101604081905262000034916200006b565b6001600160a01b0392831660805290821660a0521660c052620000bf565b6001600160a01b03811681146200006857600080fd5b50565b6000806000606084860312156200008157600080fd5b83516200008e8162000052565b6020850151909350620000a18162000052565b6040850151909250620000b48162000052565b809150509250925092565b60805160a05160c051611c5562000111600039600081816101430152610a2501526000818160f7015261042401526000818161016a015281816101900152818161069a01526107320152611c556000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063c1b8411a11610050578063c1b8411a146100f2578063dbfbe5da1461013e578063ee0fc1211461016557600080fd5b8063150b7a021461006c5780637045921c146100b5575b600080fd5b61007f61007a366004610ac8565b61018c565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100c86100c3366004611057565b6102a1565b6040805192835273ffffffffffffffffffffffffffffffffffffffff9091166020830152016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100ac565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b6101197f000000000000000000000000000000000000000000000000000000000000000081565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021d919061115e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461025457600080fd5b73ffffffffffffffffffffffffffffffffffffffff85161561027557600080fd5b507f150b7a02000000000000000000000000000000000000000000000000000000005b95945050505050565b60408051600180825281830190925260009182918291816020015b6103856040805161010080820183526000808352602080840182905283850182905260608085018390526080808601849052865161022081018852848152928301849052958201839052810182905293840181905260a084810182905260c0850182905260e0850182905291840181905261012084018190526101408401819052610160840181905261018084018190526101a084018190526101c084018190526101e08401819052610200840152909190820190815260200160608152602001606081525090565b8152602001906001900390816102bc57905050905069d3c21bcecceda1000000816000815181106103b8576103b8611182565b6020026020010151604001906dffffffffffffffffffffffffffff1690816dffffffffffffffffffffffffffff168152505061eeee8160008151811061040057610400611182565b602002602001015160a001516040019063ffffffff16908163ffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633c3a22bb306040518061010001604052808981526020018881526020016040518060400160405280600781526020017f697066733a2f2f000000000000000000000000000000000000000000000000008152508152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020018a81526020016040518060800160405280600067ffffffffffffffff8111156104fa576104fa610b67565b6040519080825280602002602001820160405280156105b757816020015b604080516101c08101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201819052610100820181905261012082018190526101408201819052610160820181905261018082018190526101a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816105185790505b50815260200161eeee63ffffffff168152602001601260ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152508152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160405180608001604052806000151581526020016000151581526020016000151581526020016000151581525081525060405180608001604052808d81526020018681526020018e81526020016040518060400160405280601581526020017f4465706c6f7965642066726f6d2043726f70746f7000000000000000000000008152508152507f00000000000000000000000000000000000000000000000000000000000000006040518563ffffffff1660e01b81526004016106d89493929190611918565b60408051808303816000875af11580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190611ab1565b885191945092501561073057610730828861085c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663293c49996040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bf919061115e565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8c811660248301526044820186905291909116906323b872dd90606401600060405180830381600087803b15801561083757600080fd5b505af115801561084b573d6000803e3d6000fd5b505050505097509795505050505050565b805160008167ffffffffffffffff81111561087957610879610b67565b6040519080825280602002602001820160405280156108f957816020015b6040805160c081018252600080825260208083018290529282018190526060808301829052608083019190915260a082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816108975790505b506040805160a081018252600080825260208201819052918101829052606080820183905260808201529192505b838110156109e75784818151811061094157610941611182565b602002602001015191506040518060c001604052808773ffffffffffffffffffffffffffffffffffffffff168152602001836000015162ffffff16815260200183602001516cffffffffffffffffffffffffff168152602001836040015163ffffffff168152602001836060015163ffffffff16815260200183608001518152508382815181106109d4576109d4611182565b6020908102919091010152600101610927565b506040517f441e4d3400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063441e4d3490610a5a908590600401611b28565b600060405180830381600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81168114610ab557600080fd5b50565b8035610ac381610a93565b919050565b600080600080600060808688031215610ae057600080fd5b8535610aeb81610a93565b94506020860135610afb81610a93565b935060408601359250606086013567ffffffffffffffff80821115610b1f57600080fd5b818801915088601f830112610b3357600080fd5b813581811115610b4257600080fd5b896020828501011115610b5457600080fd5b9699959850939650602001949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405290565b6040516060810167ffffffffffffffff81118282101715610bb957610bb9610b67565b60405160a0810167ffffffffffffffff81118282101715610bb957610bb9610b67565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610c4c57610c4c610b67565b604052919050565b600067ffffffffffffffff821115610c6e57610c6e610b67565b5060051b60200190565b803563ffffffff81168114610ac357600080fd5b600082601f830112610c9d57600080fd5b81356020610cb2610cad83610c54565b610c05565b82815260059290921b84018101918181019086841115610cd157600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610cf557600080fd5b81890191506040807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610d2d57600080fd5b610d35610b96565b87840135610d4281610a93565b81528382013583811115610d5557600080fd5b8085019450508b603f850112610d6a57600080fd5b878401359250610d7c610cad84610c54565b83815260609093028401820192888101908d851115610d9a57600080fd5b948301945b84861015610e04576060868f031215610db757600080fd5b610dbf610bbf565b8635610dca81610a93565b8152868b013560ff81168114610ddf57600080fd5b818c0152610dee878601610c78565b8186015282526060959095019490890190610d9f565b828a0152508652505050918301918301610cd5565b509695505050505050565b600082601f830112610e3557600080fd5b813567ffffffffffffffff811115610e4f57610e4f610b67565b610e8060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c05565b818152846020838601011115610e9557600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f830112610ec357600080fd5b81356020610ed3610cad83610c54565b8083825260208201915060208460051b870101935086841115610ef557600080fd5b602086015b84811015610e19578035610f0d81610a93565b8352918301918301610efa565b600082601f830112610f2b57600080fd5b81356020610f3b610cad83610c54565b82815260059290921b84018101918181019086841115610f5a57600080fd5b8286015b84811015610e1957803567ffffffffffffffff80821115610f7f5760008081fd5b818901915060a0807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0848d03011215610fb85760008081fd5b610fc0610be2565b8784013562ffffff81168114610fd65760008081fd5b81526040848101356cffffffffffffffffffffffffff81168114610ffa5760008081fd5b828a0152606061100b868201610c78565b828401526080915061101e828701610c78565b908301529184013591838311156110355760008081fd5b6110438d8a85880101610eb2565b908201528652505050918301918301610f5e565b600080600080600080600060e0888a03121561107257600080fd5b61107b88610ab8565b9650602088013567ffffffffffffffff8082111561109857600080fd5b6110a48b838c01610c8c565b975060408a01359150808211156110ba57600080fd5b6110c68b838c01610e24565b965060608a01359150808211156110dc57600080fd5b6110e88b838c01610f1a565b955060808a01359150808211156110fe57600080fd5b61110a8b838c01610e24565b945060a08a013591508082111561112057600080fd5b61112c8b838c01610e24565b935060c08a013591508082111561114257600080fd5b5061114f8a828b01610e24565b91505092959891949750929550565b60006020828403121561117057600080fd5b815161117b81610a93565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b818110156111d7576020818501810151868301820152016111bb565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b80516080808452815184820181905260009260a0916020918201918388019190865b8281101561132257845180516cffffffffffffffffffffffffff1685528281015163ffffffff908116848701526040808301519091169086015260608082015161ffff16908601528781015173ffffffffffffffffffffffffffffffffffffffff1688860152868101518786015260c08082015162ffffff169086015260e08082015160ff169086015261010080820151151590860152610120808201511515908601526101408082015115159086015261016080820151151590860152610180808201511515908601526101a090810151151590850152938101936101c090930192600101611237565b508088015163ffffffff16908901525060408087015160ff169088015260609586015173ffffffffffffffffffffffffffffffffffffffff16959096019490945250929392505050565b805161ffff1682526020810151611389602084018261ffff169052565b5060408101516113a1604084018263ffffffff169052565b5060608101516113b5606084018215159052565b5060808101516113c9608084018215159052565b5060a08101516113dd60a084018215159052565b5060c08101516113f160c084018215159052565b5060e081015161140560e084018215159052565b5061010081810151151590830152610120808201511515908301526101408082015115159083015261016080820151151590830152610180808201511515908301526101a0808201511515908301526101c0808201511515908301526101e0808201511515908301526102009081015161ffff16910152565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a52825180518552850151604086860181905281518187018190529187019160609081880190865b8181101561156f5785518051151584528b81015163ffffffff168c8501528581015166ffffffffffffff16868501528481015173ffffffffffffffffffffffffffffffffffffffff9081168686015260808083015165ffffffffffff169086015260a0918201511690840152948a019460c0909201916001016114f1565b50509c88019c96505050928501925060010161149c565b509198975050505050505050565b60008151808452602080850194506020840160005b838110156115f457815180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16885283015163ffffffff1683880152604090960195908201906001016115a9565b509495945050505050565b600082825180855260208086019550808260051b84010181860160005b848110156116be577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08684030189528151608073ffffffffffffffffffffffffffffffffffffffff8083511686528087840151168787015250604080830151828288015261168c83880182611594565b92505050606080830151925085820381870152506116aa8183611594565b9a86019a945050509083019060010161161c565b5090979650505050505050565b600082825180855260208086019550808260051b8401018186016000805b85811015611586578684037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018a528251805173ffffffffffffffffffffffffffffffffffffffff908116865290860151604087870181905281518188018190529188019290916060919082890190875b818110156117925786518051851684528c81015160ff168d85015286015163ffffffff1686840152958b01959184019160010161175a565b50509d89019d975050509386019350506001016116e9565b600060808251608085526117c160808601826111b1565b9050602080850151868303828801528281518085528385019150838160051b860101848401935060005b828110156118df577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08783030184528451805165ffffffffffff1683528681015163ffffffff908116888501526040808301516dffffffffffffffffffffffffffff1690850152606080830151909116908401528881015173ffffffffffffffffffffffffffffffffffffffff168984015260a08082015161030091906118948287018261136c565b505060c0820151816102c08601526118ae8286018261147e565b91505060e082015191508381036102e08501526118cb81836115ff565b9688019695880195935050506001016117eb565b506040890151965089810360408b01526118f981886116cb565b96505050505050506060830151848203606086015261029882826111b1565b73ffffffffffffffffffffffffffffffffffffffff8516815260806020820152600084516101608060808501526119536101e08501836111b1565b915060208701517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80808685030160a087015261198f84836111b1565b935060408901519150808685030160c08701526119ac84836111b1565b9350606089015191506119d760e087018373ffffffffffffffffffffffffffffffffffffffff169052565b6080890151915080868503016101008701526119f384836111b1565b935060a08901519150808685030161012087015250611a128382611215565b92505060c0870151611a3d61014086018273ffffffffffffffffffffffffffffffffffffffff169052565b5060e0870151611a78828601828051151582526020810151151560208301526040810151151560408301526060810151151560608301525050565b50508281036040840152611a8c81866117aa565b915050610298606083018473ffffffffffffffffffffffffffffffffffffffff169052565b60008060408385031215611ac457600080fd5b825191506020830151611ad681610a93565b809150509250929050565b60008151808452602080850194506020840160005b838110156115f457815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611af6565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015611c11578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00185528151805173ffffffffffffffffffffffffffffffffffffffff1684528781015162ffffff1688850152868101516cffffffffffffffffffffffffff168785015260608082015163ffffffff908116918601919091526080808301519091169085015260a09081015160c091850182905290611bfd81860183611ae1565b968901969450505090860190600101611b51565b50909897505050505050505056fea2646970667358221220fa034a402d761899e47b81deb6c4dc209b85b9f87f839ac1e0d784dbda4baefd64736f6c63430008170033000000000000000000000000219a5ce6d1c512d5b050ad2e3d380b8746be0cb80000000000000000000000000b41a8be7e30a01a7367e06601ed204c469ef94d000000000000000000000000dd0b2c80a18617f9428c1e9b096fe2dce222d5f8", + "gas": "1945915", + "operation": 0, + "requireSuccess": true + } + ], + "sphinxConfig": { + "projectName": "croptop-core-testnet", + "orgId": "my-org-id", + "owners": [ + "0xba5ed94ab173e1242638F28d1449b24F1A883292" + ], + "mainnets": [ + "ethereum", + "optimism", + "base", + "arbitrum" + ], + "testnets": [ + "ethereum_sepolia", + "optimism_sepolia", + "base_sepolia", + "arbitrum_sepolia" + ], + "threshold": "1", + "saltNonce": "16" + }, + "executionMode": 2, + "initialState": { + "isSafeDeployed": true, + "isModuleDeployed": true, + "isExecuting": false + }, + "unlabeledContracts": [], + "arbitraryChain": false, + "libraries": [], + "gitCommit": "95474c408eb80f99d9b5c5dc926d9372c5b46419", + "safeInitData": null +} \ No newline at end of file diff --git a/lib/sphinx b/lib/sphinx index 1b8fa68..5fb24a8 160000 --- a/lib/sphinx +++ b/lib/sphinx @@ -1 +1 @@ -Subproject commit 1b8fa68462974edbbe03a0d0b1537c91f6370656 +Subproject commit 5fb24a825f46bd6ae0b5359fe0da1d2346126b09 From 956ea3d491d4e6b81a60b46b59a6900bbb964bb7 Mon Sep 17 00:00:00 2001 From: 0xBA5ED <83727748+xBA5ED@users.noreply.github.com> Date: Fri, 20 Sep 2024 00:02:08 +0200 Subject: [PATCH 3/3] ci: bump package version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 24533fe..d5900a1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@croptop/core", - "version": "0.0.17", + "version": "0.0.18", "license": "MIT", "repository": { "type": "git",