From 446a725ca67cea6df3c491be653068ccfe713f7b Mon Sep 17 00:00:00 2001 From: Shuhui Luo <107524008+shuhuiluo@users.noreply.github.com> Date: Mon, 5 Aug 2024 13:53:09 -0700 Subject: [PATCH] chore(contract): Remove base64 library and update forge-std dependency (#605) Removed the base64 library from the project as it's no longer needed, replaced all its references with solady's Base64. Additionally, updated the forge-std dependency to version 1.9.1. This simplifies dependencies and ensures consistency. --- contracts/package.json | 3 +-- contracts/scripts/common/DeployHelpers.s.sol | 6 +++--- .../membership/metadata/MembershipMetadata.sol | 8 ++++---- .../spaces/facets/owner/SpaceOwnerUriBase.sol | 1 - .../test/base/registry/NodeOperator.t.sol | 6 +++--- .../base/registry/RewardsDistribution.t.sol | 4 ++-- .../test/crosschain/EntitlementChecker.t.sol | 2 +- contracts/test/diamond/cut/DiamondCut.t.sol | 2 +- .../test/diamond/loupe/DiamondLoupe.t.sol | 2 +- .../ownable/pending/OwnablePending.t.sol | 2 +- .../test/diamond/proxy/ProxyManager.t.sol | 2 +- contracts/test/fork/ForkSpaceOwner.t.sol | 2 +- .../river/registry/config/RiverConfig.t.sol | 2 +- .../test/river/token/base/RiverBase.t.sol | 2 +- .../token/mainnet/AuthorizedClaimers.t.sol | 2 +- .../river/token/mainnet/RiverMainnet.t.sol | 2 +- .../test/spaces/architect/Architect.t.sol | 2 +- .../EntitlementDataQueryable.t.sol | 2 +- contracts/test/spaces/guardian/Guardian.t.sol | 2 +- .../membership/unit/MembershipDuration.t.sol | 2 +- .../requirements/PlatformRequirements.t.sol | 10 +++++----- contracts/test/spaces/roles/Roles.t.sol | 2 +- packages/generated/dev/abis/SpaceOwner.json | 2 +- .../dev/abis/SpaceOwner.metadata.json | 14 +++----------- remappings.txt | 1 - scripts/copyLibs.js | 1 - yarn.lock | 18 +++++------------- 27 files changed, 42 insertions(+), 62 deletions(-) diff --git a/contracts/package.json b/contracts/package.json index 921455f5b..1e5fd0f04 100644 --- a/contracts/package.json +++ b/contracts/package.json @@ -21,13 +21,12 @@ "@openzeppelin/contracts-upgradeable": "^5.0.2", "@prb/math": "^4.0.3", "account-abstraction": "github:eth-infinitism/account-abstraction", - "base64": "github:Brechtpd/base64", "solady": "^0.0.228" }, "devDependencies": { "@prb/test": "^0.6.4", "ds-test": "github:dapphub/ds-test", - "forge-std": "github:foundry-rs/forge-std#v1", + "forge-std": "github:foundry-rs/forge-std#v1.9.1", "prettier": "^2.8.8", "prettier-plugin-solidity": "^1.3.1", "solhint": "^5.0.2" diff --git a/contracts/scripts/common/DeployHelpers.s.sol b/contracts/scripts/common/DeployHelpers.s.sol index cc4dfea32..d4f08727d 100644 --- a/contracts/scripts/common/DeployHelpers.s.sol +++ b/contracts/scripts/common/DeployHelpers.s.sol @@ -34,15 +34,15 @@ abstract contract DeployHelpers is CommonBase { } } - function info(string memory message, string memory arg) internal view { + function info(string memory message, string memory arg) internal pure { console.log(string.concat("[INFO]: ", message), arg); } - function info(string memory message, address arg) internal view { + function info(string memory message, address arg) internal pure { console.log(string.concat("[INFO]: ", unicode"✅ ", message), arg); } - function warn(string memory message, address arg) internal view { + function warn(string memory message, address arg) internal pure { console.log(string.concat("[WARN]: ", unicode"⚠️ ", message), arg); } diff --git a/contracts/src/spaces/facets/membership/metadata/MembershipMetadata.sol b/contracts/src/spaces/facets/membership/metadata/MembershipMetadata.sol index 791040084..1c0b3b454 100644 --- a/contracts/src/spaces/facets/membership/metadata/MembershipMetadata.sol +++ b/contracts/src/spaces/facets/membership/metadata/MembershipMetadata.sol @@ -5,8 +5,8 @@ pragma solidity ^0.8.23; // libraries import {ERC721AStorage} from "contracts/src/diamond/facets/token/ERC721A/ERC721AStorage.sol"; -import {Base64} from "base64/base64.sol"; -import {Strings} from "@openzeppelin/contracts/utils/Strings.sol"; +import {Base64} from "solady/utils/Base64.sol"; +import {LibString} from "solady/utils/LibString.sol"; // contracts import {ERC721ABase} from "contracts/src/diamond/facets/token/ERC721A/ERC721ABase.sol"; @@ -40,11 +40,11 @@ contract MembershipMetadata is '","image":"', _getMembershipImage(), '","attributes":[{"trait_type":"Renewal Price","display_type": "number", "value":"', - Strings.toString( + LibString.toString( _getMembershipRenewalPrice(tokenId, _totalSupply()) ), '"},{"trait_type":"Membership Expiration","display_type": "number", "value":"', - Strings.toString(_expiresAt(tokenId)), + LibString.toString(_expiresAt(tokenId)), '"},{"trait_type":"Membership Banned", "value":"', _isBanned(tokenId) ? "true" : "false", '"}]}' diff --git a/contracts/src/spaces/facets/owner/SpaceOwnerUriBase.sol b/contracts/src/spaces/facets/owner/SpaceOwnerUriBase.sol index 6d8429dc9..0f3327690 100644 --- a/contracts/src/spaces/facets/owner/SpaceOwnerUriBase.sol +++ b/contracts/src/spaces/facets/owner/SpaceOwnerUriBase.sol @@ -5,7 +5,6 @@ pragma solidity ^0.8.23; import {ISpaceOwnerBase} from "contracts/src/spaces/facets/owner/ISpaceOwner.sol"; // libraries -import {Base64} from "base64/base64.sol"; import {LibString} from "solady/utils/LibString.sol"; import {Validator} from "contracts/src/utils/Validator.sol"; diff --git a/contracts/test/base/registry/NodeOperator.t.sol b/contracts/test/base/registry/NodeOperator.t.sol index 32a98379a..596da326e 100644 --- a/contracts/test/base/registry/NodeOperator.t.sol +++ b/contracts/test/base/registry/NodeOperator.t.sol @@ -46,7 +46,7 @@ contract NodeOperatorFacetTest is riverFacet = River(riverToken); } - function test_initialization() public { + function test_initialization() public view { assertTrue( introspection.supportsInterface(type(INodeOperator).interfaceId) ); @@ -113,7 +113,7 @@ contract NodeOperatorFacetTest is // ============================================================= function test_revertWhen_isOperatorWithInvalidOperator( address randomOperator - ) external { + ) external view { vm.assume(randomOperator != address(0)); vm.assume(nodeOperator.isOperator(randomOperator) == false); assertFalse(nodeOperator.isOperator(randomOperator)); @@ -338,7 +338,7 @@ contract NodeOperatorFacetTest is function test_getOperatorStatus_operatorNotRegistered( address randomOperator - ) public { + ) public view { vm.assume(!nodeOperator.isOperator(randomOperator)); assertTrue( nodeOperator.getOperatorStatus(randomOperator) == diff --git a/contracts/test/base/registry/RewardsDistribution.t.sol b/contracts/test/base/registry/RewardsDistribution.t.sol index eed3ad904..0cdd67bdb 100644 --- a/contracts/test/base/registry/RewardsDistribution.t.sol +++ b/contracts/test/base/registry/RewardsDistribution.t.sol @@ -978,7 +978,7 @@ contract RewardsDistributionTest is function verifyUserRewardsAgainstExpected( Entity[] memory users, uint256[] memory expectedUserClaims - ) internal { + ) internal view { for (uint256 i = 0; i < users.length; i++) { uint256 reward = rewardsDistributionFacet.getClaimableAmountForDelegator( users[i].addr @@ -994,7 +994,7 @@ contract RewardsDistributionTest is function verifyOperatorRewardsAgainstExpected( Entity[] memory operators, uint256[] memory expectedOperatorClaims - ) internal { + ) internal view { for (uint256 i = 0; i < operators.length; i++) { uint256 reward = rewardsDistributionFacet.getClaimableAmountForOperator( operator.getClaimAddressForOperator(operators[i].addr) diff --git a/contracts/test/crosschain/EntitlementChecker.t.sol b/contracts/test/crosschain/EntitlementChecker.t.sol index 0e6b8bde8..b2d875e3d 100644 --- a/contracts/test/crosschain/EntitlementChecker.t.sol +++ b/contracts/test/crosschain/EntitlementChecker.t.sol @@ -119,7 +119,7 @@ contract EntitlementCheckerTest is BaseSetup, IEntitlementCheckerBase { // ============================================================= // Random Nodes // ============================================================= - function test_getRandomNodes() external { + function test_getRandomNodes() external view { address[] memory nodes = entitlementChecker.getRandomNodes(5); uint256 nodeLen = nodes.length; diff --git a/contracts/test/diamond/cut/DiamondCut.t.sol b/contracts/test/diamond/cut/DiamondCut.t.sol index 9b511326f..075f92177 100644 --- a/contracts/test/diamond/cut/DiamondCut.t.sol +++ b/contracts/test/diamond/cut/DiamondCut.t.sol @@ -21,7 +21,7 @@ contract DiamondCutTest is DiamondCutSetup, IDiamondCutBase, IOwnableBase { IDiamond.FacetCut[] internal facetCuts; - function test_supportsInterface() external { + function test_supportsInterface() external view { assertTrue( IERC165(diamond).supportsInterface(type(IDiamondCut).interfaceId) ); diff --git a/contracts/test/diamond/loupe/DiamondLoupe.t.sol b/contracts/test/diamond/loupe/DiamondLoupe.t.sol index 358c777f0..8d820482a 100644 --- a/contracts/test/diamond/loupe/DiamondLoupe.t.sol +++ b/contracts/test/diamond/loupe/DiamondLoupe.t.sol @@ -17,7 +17,7 @@ contract DiamondLoupeTest is DiamondCutSetup { DeployMockFacet mockFacetHelper = new DeployMockFacet(); IDiamond.FacetCut[] internal facetCuts; - function test_supportsInterface() external { + function test_supportsInterface() external view { assertTrue( IERC165(diamond).supportsInterface(type(IDiamondLoupe).interfaceId) ); diff --git a/contracts/test/diamond/ownable/pending/OwnablePending.t.sol b/contracts/test/diamond/ownable/pending/OwnablePending.t.sol index d95277044..40c6a4f30 100644 --- a/contracts/test/diamond/ownable/pending/OwnablePending.t.sol +++ b/contracts/test/diamond/ownable/pending/OwnablePending.t.sol @@ -9,7 +9,7 @@ pragma solidity ^0.8.23; import {OwnablePendingSetup} from "./OwnablePendingSetup.sol"; contract OwnablePendingTest is OwnablePendingSetup { - function test_currentOwner() external { + function test_currentOwner() external view { assertEq(ownable.currentOwner(), deployer); } diff --git a/contracts/test/diamond/proxy/ProxyManager.t.sol b/contracts/test/diamond/proxy/ProxyManager.t.sol index 6872aa71a..a4271a20b 100644 --- a/contracts/test/diamond/proxy/ProxyManager.t.sol +++ b/contracts/test/diamond/proxy/ProxyManager.t.sol @@ -71,7 +71,7 @@ contract ProxyManagerTest is ProxyManagerSetup { } /// @notice This test checks that the owner of the proxy is different from the owner of the implementation - function test_proxyOwner() external { + function test_proxyOwner() external view { assertEq(IERC173(address(implementation)).owner(), deployer); assertEq(IERC173(address(managedProxy)).owner(), managedProxyOwner); } diff --git a/contracts/test/fork/ForkSpaceOwner.t.sol b/contracts/test/fork/ForkSpaceOwner.t.sol index cc60f620c..7e03c1db7 100644 --- a/contracts/test/fork/ForkSpaceOwner.t.sol +++ b/contracts/test/fork/ForkSpaceOwner.t.sol @@ -104,7 +104,7 @@ contract ForkSpaceOwner is ); } - function test_getSpaceInfo() external onlyForked { + function test_getSpaceInfo() external view onlyForked { Space memory space = SpaceOwner(spaceOwnerDiamond).getSpaceInfo( 0xC87bb04477151743070B45A3426938128896AC5D ); diff --git a/contracts/test/river/registry/config/RiverConfig.t.sol b/contracts/test/river/registry/config/RiverConfig.t.sol index 14d16f57d..e2c888ef5 100644 --- a/contracts/test/river/registry/config/RiverConfig.t.sol +++ b/contracts/test/river/registry/config/RiverConfig.t.sol @@ -52,7 +52,7 @@ contract RiverConfigTest is // ============================================================= // Configuration // ============================================================= - function test_configurationNonExistingKey(bytes32 key) external { + function test_configurationNonExistingKey(bytes32 key) external view { assertFalse(riverConfig.configurationExists(key)); } diff --git a/contracts/test/river/token/base/RiverBase.t.sol b/contracts/test/river/token/base/RiverBase.t.sol index d19b76d31..b1478a7ab 100644 --- a/contracts/test/river/token/base/RiverBase.t.sol +++ b/contracts/test/river/token/base/RiverBase.t.sol @@ -29,7 +29,7 @@ contract RiverBaseTest is BaseSetup, ILockBase, IOwnableBase { stakeRequirement = riverFacet.MIN_TOKEN_THRESHOLD(); } - function test_init() external { + function test_init() external view { assertEq(riverFacet.name(), "River"); assertEq(riverFacet.symbol(), "RVR"); assertEq(riverFacet.decimals(), 18); diff --git a/contracts/test/river/token/mainnet/AuthorizedClaimers.t.sol b/contracts/test/river/token/mainnet/AuthorizedClaimers.t.sol index 80dc31d1a..44afbcb40 100644 --- a/contracts/test/river/token/mainnet/AuthorizedClaimers.t.sol +++ b/contracts/test/river/token/mainnet/AuthorizedClaimers.t.sol @@ -68,7 +68,7 @@ contract AuthorizedClaimersTest is TestUtils, IAuthorizedClaimersBase { ); } - function test_getAuthorizedClaimer_notAuthorized() public { + function test_getAuthorizedClaimer_notAuthorized() public view { assertEq( authorizedClaimers.getAuthorizedClaimer(_randomAddress()), address(0), diff --git a/contracts/test/river/token/mainnet/RiverMainnet.t.sol b/contracts/test/river/token/mainnet/RiverMainnet.t.sol index 7387f3156..dc5343b37 100644 --- a/contracts/test/river/token/mainnet/RiverMainnet.t.sol +++ b/contracts/test/river/token/mainnet/RiverMainnet.t.sol @@ -39,7 +39,7 @@ contract RiverMainnetTest is TestUtils, IRiverBase, ILockBase { (, , inflation) = deployRiverMainnet.config(); } - function test_init() external { + function test_init() external view { assertEq(river.name(), "River"); assertEq(river.symbol(), "RVR"); assertEq(river.decimals(), 18); diff --git a/contracts/test/spaces/architect/Architect.t.sol b/contracts/test/spaces/architect/Architect.t.sol index 9e559217a..6b7755741 100644 --- a/contracts/test/spaces/architect/Architect.t.sol +++ b/contracts/test/spaces/architect/Architect.t.sol @@ -113,7 +113,7 @@ contract ArchitectTest is ); } - function test_getImplementations() external { + function test_getImplementations() external view { ( ISpaceOwner spaceTokenAddress, IUserEntitlement userEntitlementAddress, diff --git a/contracts/test/spaces/entitlements/EntitlementDataQueryable.t.sol b/contracts/test/spaces/entitlements/EntitlementDataQueryable.t.sol index b1ec7b92d..a5f8d6296 100644 --- a/contracts/test/spaces/entitlements/EntitlementDataQueryable.t.sol +++ b/contracts/test/spaces/entitlements/EntitlementDataQueryable.t.sol @@ -45,7 +45,7 @@ contract EntitlementDataQueryableTest is ); } - function test_getEntitlementDataByRole() external { + function test_getEntitlementDataByRole() external view { EntitlementData[] memory entitlement = entitlements .getEntitlementDataByPermission(Permissions.JoinSpace); diff --git a/contracts/test/spaces/guardian/Guardian.t.sol b/contracts/test/spaces/guardian/Guardian.t.sol index 80687d5fe..85da007c5 100644 --- a/contracts/test/spaces/guardian/Guardian.t.sol +++ b/contracts/test/spaces/guardian/Guardian.t.sol @@ -11,7 +11,7 @@ import {GuardianSetup} from "./GuardianSetup.sol"; contract GuardianTest is GuardianSetup, IGuardianBase { // guardian is enabled by default - function test_isGuardianEnabled() external { + function test_isGuardianEnabled() external view { address wallet = _randomAddress(); assertTrue(guardian.isGuardianEnabled(wallet)); } diff --git a/contracts/test/spaces/membership/unit/MembershipDuration.t.sol b/contracts/test/spaces/membership/unit/MembershipDuration.t.sol index 850aa1ad3..d24d89847 100644 --- a/contracts/test/spaces/membership/unit/MembershipDuration.t.sol +++ b/contracts/test/spaces/membership/unit/MembershipDuration.t.sol @@ -11,7 +11,7 @@ import {MembershipBaseSetup} from "../MembershipBaseSetup.sol"; //contracts contract MembershipDurationTest is MembershipBaseSetup { - function test_getMembershipDuration() public { + function test_getMembershipDuration() public view { uint256 duration = membership.getMembershipDuration(); assertEq(duration, platformReqs.getMembershipDuration()); } diff --git a/contracts/test/spaces/platform/requirements/PlatformRequirements.t.sol b/contracts/test/spaces/platform/requirements/PlatformRequirements.t.sol index ceb9d5925..e95bcb552 100644 --- a/contracts/test/spaces/platform/requirements/PlatformRequirements.t.sol +++ b/contracts/test/spaces/platform/requirements/PlatformRequirements.t.sol @@ -27,7 +27,7 @@ contract PlatformRequirementsTest is } // Fee Recipient - function test_getFeeRecipient() public { + function test_getFeeRecipient() public view { address feeRecipient = platformReqs.getFeeRecipient(); assertEq(feeRecipient, address(deployer)); } @@ -51,7 +51,7 @@ contract PlatformRequirementsTest is // Membership BPS - function test_getMembershipBps() public { + function test_getMembershipBps() public view { uint16 membershipBps = platformReqs.getMembershipBps(); assertEq(membershipBps, 500); } @@ -78,7 +78,7 @@ contract PlatformRequirementsTest is } // Membership Fee - function test_getMembershipFee() public { + function test_getMembershipFee() public view { uint256 membershipFee = platformReqs.getMembershipFee(); assertEq(membershipFee, 0.005 ether); } @@ -101,7 +101,7 @@ contract PlatformRequirementsTest is } // Membership Mint Limit - function test_getMembershipMintLimit() public { + function test_getMembershipMintLimit() public view { uint256 membershipMintLimit = platformReqs.getMembershipMintLimit(); assertEq(membershipMintLimit, 1_000); } @@ -129,7 +129,7 @@ contract PlatformRequirementsTest is // Membership Duration - function test_getMembershipDuration() public { + function test_getMembershipDuration() public view { uint256 membershipDuration = platformReqs.getMembershipDuration(); assertEq(membershipDuration, 365 days); } diff --git a/contracts/test/spaces/roles/Roles.t.sol b/contracts/test/spaces/roles/Roles.t.sol index dcf5b9da8..3b2488bde 100644 --- a/contracts/test/spaces/roles/Roles.t.sol +++ b/contracts/test/spaces/roles/Roles.t.sol @@ -264,7 +264,7 @@ contract RolesTest is BaseSetup, IRolesBase, IEntitlementBase { assertEq(currentRoles.length, allRoles.length - 2); } - function test_getRoles_default_roles() external { + function test_getRoles_default_roles() external view { IRoles.Role[] memory allRoles = roles.getRoles(); assertEq(allRoles.length, 2); } diff --git a/packages/generated/dev/abis/SpaceOwner.json b/packages/generated/dev/abis/SpaceOwner.json index d2585f0be..884f4bf6d 100644 --- a/packages/generated/dev/abis/SpaceOwner.json +++ b/packages/generated/dev/abis/SpaceOwner.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"CLOCK_MODE","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"DOMAIN_SEPARATOR","inputs":[],"outputs":[{"name":"result","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"__ERC721A_init","inputs":[{"name":"name_","type":"string","internalType":"string"},{"name":"symbol_","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"__SpaceOwner_init","inputs":[{"name":"name","type":"string","internalType":"string"},{"name":"symbol","type":"string","internalType":"string"},{"name":"version","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"approve","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"balanceOf","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"clock","inputs":[],"outputs":[{"name":"","type":"uint48","internalType":"uint48"}],"stateMutability":"view"},{"type":"function","name":"delegate","inputs":[{"name":"delegatee","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"delegateBySig","inputs":[{"name":"delegatee","type":"address","internalType":"address"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"expiry","type":"uint256","internalType":"uint256"},{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"delegates","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"eip712Domain","inputs":[],"outputs":[{"name":"fields","type":"bytes1","internalType":"bytes1"},{"name":"name","type":"string","internalType":"string"},{"name":"version","type":"string","internalType":"string"},{"name":"chainId","type":"uint256","internalType":"uint256"},{"name":"verifyingContract","type":"address","internalType":"address"},{"name":"salt","type":"bytes32","internalType":"bytes32"},{"name":"extensions","type":"uint256[]","internalType":"uint256[]"}],"stateMutability":"view"},{"type":"function","name":"getApproved","inputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getDefaultUri","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"getFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getPastTotalSupply","inputs":[{"name":"timepoint","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPastVotes","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"timepoint","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getSpaceInfo","inputs":[{"name":"space","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ISpaceOwnerBase.Space","components":[{"name":"name","type":"string","internalType":"string"},{"name":"uri","type":"string","internalType":"string"},{"name":"tokenId","type":"uint256","internalType":"uint256"},{"name":"createdAt","type":"uint256","internalType":"uint256"},{"name":"shortDescription","type":"string","internalType":"string"},{"name":"longDescription","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"getVotes","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"isApprovedForAll","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"operator","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"mintSpace","inputs":[{"name":"name","type":"string","internalType":"string"},{"name":"uri","type":"string","internalType":"string"},{"name":"space","type":"address","internalType":"address"},{"name":"shortDescription","type":"string","internalType":"string"},{"name":"longDescription","type":"string","internalType":"string"}],"outputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"nextTokenId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"nonces","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"ownerOf","inputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"safeTransferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"safeTransferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"tokenId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"setApprovalForAll","inputs":[{"name":"operator","type":"address","internalType":"address"},{"name":"approved","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setDefaultUri","inputs":[{"name":"uri","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setFactory","inputs":[{"name":"factory","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"tokenURI","inputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"updateSpaceInfo","inputs":[{"name":"space","type":"address","internalType":"address"},{"name":"name","type":"string","internalType":"string"},{"name":"uri","type":"string","internalType":"string"},{"name":"shortDescription","type":"string","internalType":"string"},{"name":"longDescription","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"approved","type":"address","indexed":true,"internalType":"address"},{"name":"tokenId","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ApprovalForAll","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"operator","type":"address","indexed":true,"internalType":"address"},{"name":"approved","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"ConsecutiveTransfer","inputs":[{"name":"fromTokenId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"toTokenId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"DelegateChanged","inputs":[{"name":"delegator","type":"address","indexed":true,"internalType":"address"},{"name":"fromDelegate","type":"address","indexed":true,"internalType":"address"},{"name":"toDelegate","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"DelegateVotesChanged","inputs":[{"name":"delegate","type":"address","indexed":true,"internalType":"address"},{"name":"previousBalance","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"newBalance","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"EIP712DomainChanged","inputs":[],"anonymous":false},{"type":"event","name":"GuardianUpdated","inputs":[{"name":"caller","type":"address","indexed":true,"internalType":"address"},{"name":"enabled","type":"bool","indexed":true,"internalType":"bool"},{"name":"cooldown","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint32","indexed":false,"internalType":"uint32"}],"anonymous":false},{"type":"event","name":"InterfaceAdded","inputs":[{"name":"interfaceId","type":"bytes4","indexed":true,"internalType":"bytes4"}],"anonymous":false},{"type":"event","name":"InterfaceRemoved","inputs":[{"name":"interfaceId","type":"bytes4","indexed":true,"internalType":"bytes4"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"SpaceOwner__SetDefaultUri","inputs":[{"name":"uri","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"SpaceOwner__SetFactory","inputs":[{"name":"factory","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"SpaceOwner__UpdateSpace","inputs":[{"name":"space","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"tokenId","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"AlreadyDisabled","inputs":[]},{"type":"error","name":"AlreadyEnabled","inputs":[]},{"type":"error","name":"ApprovalCallerNotOwnerNorApproved","inputs":[]},{"type":"error","name":"ApprovalQueryForNonexistentToken","inputs":[]},{"type":"error","name":"BalanceQueryForZeroAddress","inputs":[]},{"type":"error","name":"ECDSAInvalidSignature","inputs":[]},{"type":"error","name":"ECDSAInvalidSignatureLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ECDSAInvalidSignatureS","inputs":[{"name":"s","type":"bytes32","internalType":"bytes32"}]},{"type":"error","name":"GuardianEnabled","inputs":[]},{"type":"error","name":"Initializable_AlreadyInitialized","inputs":[{"name":"version","type":"uint32","internalType":"uint32"}]},{"type":"error","name":"Initializable_InInitializingState","inputs":[]},{"type":"error","name":"Initializable_NotInInitializingState","inputs":[]},{"type":"error","name":"Introspection_AlreadySupported","inputs":[]},{"type":"error","name":"Introspection_NotSupported","inputs":[]},{"type":"error","name":"InvalidAccountNonce","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"currentNonce","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"MintERC2309QuantityExceedsLimit","inputs":[]},{"type":"error","name":"MintToZeroAddress","inputs":[]},{"type":"error","name":"MintZeroQuantity","inputs":[]},{"type":"error","name":"NotExternalAccount","inputs":[]},{"type":"error","name":"Ownable__NotOwner","inputs":[{"name":"account","type":"address","internalType":"address"}]},{"type":"error","name":"Ownable__ZeroAddress","inputs":[]},{"type":"error","name":"OwnerQueryForNonexistentToken","inputs":[]},{"type":"error","name":"OwnershipNotInitializedForExtraData","inputs":[]},{"type":"error","name":"SafeCastOverflowedUintDowncast","inputs":[{"name":"bits","type":"uint8","internalType":"uint8"},{"name":"value","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SpaceOwner__DefaultUriNotSet","inputs":[]},{"type":"error","name":"SpaceOwner__OnlyFactoryAllowed","inputs":[]},{"type":"error","name":"SpaceOwner__OnlySpaceOwnerAllowed","inputs":[]},{"type":"error","name":"SpaceOwner__SpaceNotFound","inputs":[]},{"type":"error","name":"TransferCallerNotOwnerNorApproved","inputs":[]},{"type":"error","name":"TransferFromIncorrectOwner","inputs":[]},{"type":"error","name":"TransferToNonERC721ReceiverImplementer","inputs":[]},{"type":"error","name":"TransferToZeroAddress","inputs":[]},{"type":"error","name":"URIQueryForNonexistentToken","inputs":[]},{"type":"error","name":"Validator__InvalidAddress","inputs":[]},{"type":"error","name":"Validator__InvalidStringLength","inputs":[]}],"bytecode":{"object":"0x60806040523480156200001157600080fd5b506200001c62000022565b620000ca565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054640100000000900460ff16156200006f576040516366008a2d60e01b815260040160405180910390fd5b805463ffffffff9081161015620000c757805463ffffffff191663ffffffff90811782556040519081527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15b50565b613afe80620000da6000396000f3fe6080604052600436106101f95760003560e01c806375794a3c1161010d5780639ab24eb0116100a0578063c87b56dd1161006f578063c87b56dd1461057c578063d2f01f191461059c578063d6536540146105bc578063d7a901d3146105d1578063e985e9c5146105f157600080fd5b80639ab24eb014610509578063a22cb46514610529578063b88d4fde14610549578063c3cda5201461055c57600080fd5b806388cc58e4116100dc57806388cc58e4146104935780638e539e8c146104a857806391ddadf4146104c857806395d89b41146104f457600080fd5b806375794a3c146104165780637ecebe001461042b578063848806141461044b57806384b0196e1461046b57600080fd5b806342842e0e116101905780635bb478081161015f5780635bb47808146103695780635c19a95c146103895780636352211e146103a95780636a9a38e6146103c957806370a08231146103f657600080fd5b806342842e0e14610301578063466a18de146103145780634bf5d7e914610334578063587cde1e1461034957600080fd5b806323b872dd116101cc57806323b872dd146102995780633644e515146102ac5780633a46b1a8146102c15780633bf5b8f4146102e157600080fd5b806306fdde03146101fe578063081812fc14610229578063095ea7b31461026157806318160ddd14610276575b600080fd5b34801561020a57600080fd5b50610213610621565b6040516102209190613172565b60405180910390f35b34801561023557600080fd5b50610249610244366004613185565b6106bc565b6040516001600160a01b039091168152602001610220565b61027461026f3660046131ba565b6106cd565b005b34801561028257600080fd5b5061028b610715565b604051908152602001610220565b6102746102a73660046131e4565b610724565b3480156102b857600080fd5b5061028b610934565b3480156102cd57600080fd5b5061028b6102dc3660046131ba565b61093e565b3480156102ed57600080fd5b5061028b6102fc3660046132cc565b610951565b61027461030f3660046131e4565b6109bd565b34801561032057600080fd5b5061027461032f36600461338a565b6109dd565b34801561034057600080fd5b50610213610a3a565b34801561035557600080fd5b506102496103643660046133bf565b610a44565b34801561037557600080fd5b506102746103843660046133bf565b610a4f565b34801561039557600080fd5b506102746103a43660046133bf565b610aa4565b3480156103b557600080fd5b506102496103c4366004613185565b610aae565b3480156103d557600080fd5b506103e96103e43660046133bf565b610ab9565b60405161022091906133da565b34801561040257600080fd5b5061028b6104113660046133bf565b610afb565b34801561042257600080fd5b5061028b610b06565b34801561043757600080fd5b5061028b6104463660046133bf565b610b10565b34801561045757600080fd5b5061027461046636600461346c565b610b4d565b34801561047757600080fd5b50610480610b6a565b60405161022097969594939291906134d8565b34801561049f57600080fd5b50610249610c2d565b3480156104b457600080fd5b5061028b6104c3366004613185565b610c4e565b3480156104d457600080fd5b506104dd610c59565b60405165ffffffffffff9091168152602001610220565b34801561050057600080fd5b50610213610c63565b34801561051557600080fd5b5061028b6105243660046133bf565b610c7b565b34801561053557600080fd5b50610274610544366004613571565b610c86565b6102746105573660046135ad565b610cbf565b34801561056857600080fd5b50610274610577366004613629565b610d09565b34801561058857600080fd5b50610213610597366004613185565b610d17565b3480156105a857600080fd5b506102746105b7366004613689565b610d48565b3480156105c857600080fd5b50610213610d9b565b3480156105dd57600080fd5b506102746105ec3660046136ed565b610da5565b3480156105fd57600080fd5b5061061161060c366004613775565b610ea1565b6040519015158152602001610220565b606061062b610ead565b6002018054610639906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054610665906137a8565b80156106b25780601f10610687576101008083540402835291602001916106b2565b820191906000526020600020905b81548152906001019060200180831161069557829003601f168201915b5050505050905090565b60006106c782610ed1565b92915050565b6001600160a01b038216158015906106e957506106e933610f1e565b1561070757604051638043dfaf60e01b815260040160405180910390fd5b6107118282610f9a565b5050565b600061071f610fa6565b905090565b600061072f82610fc5565b9050836001600160a01b0316816001600160a01b0316146107625760405162a1148160e81b815260040160405180910390fd5b60008061076e84611060565b91509150610793818761077e3390565b6001600160a01b039081169116811491141790565b6107be576107a18633610ea1565b6107be57604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b0385166107e557604051633a954ecd60e21b815260040160405180910390fd5b6107f28686866001611088565b80156107fd57600082555b610805610ead565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610831610ead565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610868610ead565b60008681526004919091016020526040812091909155600160e11b841690036108de5760018401610897610ead565b6000828152600491909101602052604081205490036108dc576108b8610ead565b5481146108dc57836108c8610ead565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461092c86868660016110c7565b505050505050565b600061071f6110d2565b600061094a83836110dc565b9392505050565b600080600080516020613a9e83398151915280549091506001600160a01b031633146109905760405163443e750b60e11b815260040160405180910390fd5b61099861117a565b91506109a887878488888861118a565b6109b33360016112e1565b5095945050505050565b6109d883838360405180602001604052806000815250610cbf565b505050565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae300546001600160a01b03163314610a2e576040516365f4906560e01b81523360048201526024015b60405180910390fd5b610a3781611431565b50565b606061071f6114a2565b60006106c78261153a565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae300546001600160a01b03163314610a9b576040516365f4906560e01b8152336004820152602401610a25565b610a3781611577565b610a3733826115e1565b60006106c782610fc5565b610af26040518060c001604052806060815260200160608152602001600081526020016000815260200160608152602001606081525090565b6106c78261167b565b60006106c782611986565b600061071f61117a565b6001600160a01b03811660009081527fda5d6d87446d81938877f0ee239dac391146dd7466ea30567f72becf06773c0060205260408120546106c7565b610b56856119ef565b610b638585858585611a2c565b5050505050565b600060608082808083600080516020613abe83398151915254158015610baf57507f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d54155b610bf35760405162461bcd60e51b81526020600482015260156024820152741152540dcc4c8e88155b9a5b9a5d1a585b1a5e9959605a1b6044820152606401610a25565b610bfb611b17565b610c03611b2d565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b600061071f600080516020613a9e833981519152546001600160a01b031690565b60006106c782611b43565b600061071f611bdc565b6060610c6d610ead565b6003018054610639906137a8565b60006106c782611be7565b808015610c975750610c9733610f1e565b15610cb557604051638043dfaf60e01b815260040160405180910390fd5b6107118282611c15565b610cca848484610724565b6001600160a01b0383163b15610d0357610ce684848484611c92565b610d03576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b61092c868686868686611d7e565b6060610d2282611e67565b610d3f57604051630a14c4b560e41b815260040160405180910390fd5b6106c782611ea3565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054600160201b900460ff16610d9157604051630ef4733760e31b815260040160405180910390fd5b610711828261211c565b606061071f612146565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054600160201b900460ff161580610de157303b1515610df0565b8154600163ffffffff90911610155b15610e19578154604051630a8ef77f60e31b815263ffffffff9091166004820152602401610a25565b815463ffffffff191660011782558015610e4057815464ff000000001916600160201b1782555b610e4a858561211c565b610e548584612165565b8015610b6357815464ff0000000019168255604051600181527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15050505050565b600061094a83836121b8565b7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df0090565b6000610edc82611e67565b610ef9576040516333d1c03960e21b815260040160405180910390fd5b610f01610ead565b60009283526006016020525060409020546001600160a01b031690565b60007f0c89d3aad1b583c77a2e9f9fffa651b386c9c29e300bf2a8e2f3de1bb0100a006001600160a01b0383163b15801561094a57506001600160a01b0383166000908152600182016020526040902054158061094a57506001600160a01b038316600090815260018201602052604090205442109392505050565b610711828260016121f5565b600080610fb1610ead565b60010154610fbd610ead565b540303919050565b600080610fd0610ead565b60008481526004820160205260408120549350909150600160e01b831690036110465781600003611040578054831061101c57604051636f96cda160e11b815260040160405180910390fd5b5b60001990920160008181526004840160205260409020549092909150811561101d575b50919050565b50604051636f96cda160e11b815260040160405180910390fd5b600080600061106d610ead565b60009485526006016020525050604090912080549092909150565b6001600160a01b038416158015906110a457506110a484610f1e565b156110c257604051638043dfaf60e01b815260040160405180910390fd5b610d03565b6110c28484836122aa565b600061071f61234c565b60006110e6611bdc565b65ffffffffffff1682106111335760405162461bcd60e51b81526020600482015260146024820152730566f7465733a20667574757265206c6f6f6b75760641b6044820152606401610a25565b61116a61113f836123c0565b6001600160a01b0385166000908152600080516020613ade83398151915260205260409020906123f5565b6001600160e01b03169392505050565b6000611184610ead565b54919050565b6111958660026124a9565b6111a08560006124a9565b6111a9836124cd565b60008481527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477016020908152604080832080546001600160a01b0319166001600160a01b03881690811790915581516080810183528a81528084018a90528083018990524260608201529084527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477029092529091208151600080516020613a9e833981519152929190819061125c9082613824565b50602082015160018201906112719082613824565b5060408281015160028301556060909201516003918201558151808301835285815260208082018690526001600160a01b03881660009081529285019052919020815181906112c09082613824565b50602082015160018201906112d59082613824565b50505050505050505050565b60006112eb610ead565b54905060008290036113105760405163b562e8dd60e01b815260040160405180910390fd5b61131d6000848385611088565b680100000000000000018202611331610ead565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b171761136c610ead565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146113f657808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001016113be565b508160000361141757604051622e076360e81b815260040160405180910390fd5b80611420610ead565b55506109d8905060008483856110c7565b61143c8160016124a9565b7f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477046114678282613824565b507f8fe3adc25723aa6a0b7eb4b4bacf52e92165c180bde5353f7cf606fbf5591f2b816040516114979190613172565b60405180910390a150565b6060436114ad611bdc565b65ffffffffffff16146115025760405162461bcd60e51b815260206004820152601860248201527f566f7465733a2062726f6b656e20636c6f636b206d6f646500000000000000006044820152606401610a25565b5060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b6001600160a01b0390811660009081527f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f6560205260409020541690565b611580816124cd565b600080516020613a9e83398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f64c14256e532eac2ec90ddc4973ed2d3f5623faf7951d90eec38f9b7812f99a79181900360200190a15050565b60006115ec8361153a565b6001600160a01b0384811660008181527f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f65602052604080822080546001600160a01b031916888616908117909155905194955093928516927f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a46109d88183611676866124f4565b6124ff565b6116b46040518060c001604052806060815260200160608152602001600081526020016000815260200160608152602001606081525090565b6001600160a01b03821660009081527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe5747702602090815260408083207f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe574770390925291829020825160c0810190935281549192909181908490611732906137a8565b80601f016020809104026020016040519081016040528092919081815260200182805461175e906137a8565b80156117ab5780601f10611780576101008083540402835291602001916117ab565b820191906000526020600020905b81548152906001019060200180831161178e57829003601f168201915b505050505081526020018360010180546117c4906137a8565b80601f01602080910402602001604051908101604052809291908181526020018280546117f0906137a8565b801561183d5780601f106118125761010080835404028352916020019161183d565b820191906000526020600020905b81548152906001019060200180831161182057829003601f168201915b50505050508152602001836002015481526020018360030154815260200182600001805461186a906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611896906137a8565b80156118e35780601f106118b8576101008083540402835291602001916118e3565b820191906000526020600020905b8154815290600101906020018083116118c657829003601f168201915b505050505081526020018260010180546118fc906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611928906137a8565b80156119755780601f1061194a57610100808354040283529160200191611975565b820191906000526020600020905b81548152906001019060200180831161195857829003601f168201915b505050505081525092505050919050565b60006001600160a01b0382166119af576040516323d3ad8160e21b815260040160405180910390fd5b67ffffffffffffffff6119c0610ead565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b33611a056119fc8361167b565b60400151610aae565b6001600160a01b031614610a375760405163dbfcf17d60e01b815260040160405180910390fd5b611a378460026124a9565b611a428360016124a9565b6001600160a01b03851660009081527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe574770260205260409020600080516020613a9e8339815191529080611a948782613824565b5060018101611aa38682613824565b506001600160a01b0387166000908152600383016020526040902080611ac98682613824565b5060018101611ad88582613824565b506040516001600160a01b038916907f66da702131703ee5e745ecf2f5b98311caa00729edd55541baad49289fc42ed890600090a25050505050505050565b6060600080516020613abe83398151915261062b565b6060600080516020613abe833981519152610c6d565b6000611b4d611bdc565b65ffffffffffff168210611b9a5760405162461bcd60e51b81526020600482015260146024820152730566f7465733a20667574757265206c6f6f6b75760641b6044820152606401610a25565b611bcd611ba6836123c0565b7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67906123f5565b6001600160e01b031692915050565b600061071f43612680565b6001600160a01b0381166000908152600080516020613ade83398151915260205260408120611bcd906126b3565b80611c1e610ead565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290611cc79033908990889088906004016138e4565b6020604051808303816000875af1925050508015611d02575060408051601f3d908101601f19168201909252611cff91810190613921565b60015b611d60573d808015611d30576040519150601f19603f3d011682016040523d82523d6000602084013e611d35565b606091505b508051600003611d58576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490505b949350505050565b83421115611dce5760405162461bcd60e51b815260206004820152601860248201527f566f7465733a207369676e6174757265206578706972656400000000000000006044820152606401610a25565b604080517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60208201526001600160a01b038816918101919091526060810186905260808101859052600090611e4890611e409060a001604051602081830303815290604052805190602001206126ec565b858585612719565b9050611e548187612747565b611e5e81886115e1565b50505050505050565b6000611e71610ead565b54821080156106c75750600160e01b611e88610ead565b60008481526004919091016020526040902054161592915050565b60008181527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477016020526040902054606090600080516020613a9e833981519152906001600160a01b031680611f0b5760405163af5f208f60e01b815260040160405180910390fd5b6001600160a01b03811660009081526002830160205260409020600181018054611f34906137a8565b159050611fd257806001018054611f4a906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611f76906137a8565b8015611fc35780601f10611f9857610100808354040283529160200191611fc3565b820191906000526020600020905b815481529060010190602001808311611fa657829003601f168201915b50505050509350505050919050565b6000836004018054611fe3906137a8565b80601f016020809104026020016040519081016040528092919081815260200182805461200f906137a8565b801561205c5780601f106120315761010080835404028352916020019161205c565b820191906000526020600020905b81548152906001019060200180831161203f57829003601f168201915b505050505090506000815190508060000361208a5760405163cd251ac560e01b815260040160405180910390fd5b81600182038151811061209f5761209f61394b565b6020910101516001600160f81b031916602f60f81b146120f857816120cc856001600160a01b03166127b9565b6040516020016120dd929190613961565b60405160208183030381529060405295505050505050919050565b8161210b856001600160a01b03166127b9565b6040516020016120dd92919061399d565b61212c6380ac58cd60e01b612862565b61213c635b5e139f60e01b612862565b6107118282612940565b6060600080516020613a9e8339815191526004018054610639906137a8565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054600160201b900460ff166121ae57604051630ef4733760e31b815260040160405180910390fd5b6107118282612972565b60006121c2610ead565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b600061220083610aae565b9050811561223f57336001600160a01b0382161461223f5761222281336121b8565b61223f576040516367d9dca160e11b815260040160405180910390fd5b83612248610ead565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6001600160a01b0383166122f0576122ed7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67612a046122e884612a10565b612a44565b50505b6001600160a01b0382166123315761232e7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67612a8d6122e884612a10565b50505b6109d861233d8461153a565b6123468461153a565b836124ff565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f612377612a99565b61237f612aff565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b600063ffffffff8211156123f1576040516306dfcc6560e41b81526020600482015260248101839052604401610a25565b5090565b81546000908181600581111561245257600061241084612b4f565b61241a90856139e2565b60008881526020902090915081015463ffffffff908116908716101561244257809150612450565b61244d8160016139f5565b92505b505b600061246087878585612c37565b9050801561249b57612485876124776001846139e2565b600091825260209091200190565b54600160201b90046001600160e01b031661249e565b60005b979650505050505050565b815182908211156109d8576040516374eb20a760e01b815260040160405180910390fd5b6001600160a01b038116610a37576040516302e47d1560e41b815260040160405180910390fd5b60006106c782610afb565b816001600160a01b0316836001600160a01b0316141580156125215750600081115b156109d8576001600160a01b038316156125d1576001600160a01b0383166000908152600080516020613ade83398151915260205260408120819061256c90612a8d6122e886612a10565b6001600160e01b031691506001600160e01b03169150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516125c6929190918252602082015260400190565b60405180910390a250505b6001600160a01b038216156109d8576001600160a01b0382166000908152600080516020613ade83398151915260205260408120819061261790612a046122e886612a10565b6001600160e01b031691506001600160e01b03169150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051612671929190918252602082015260400190565b60405180910390a25050505050565b600065ffffffffffff8211156123f1576040516306dfcc6560e41b81526030600482015260248101839052604401610a25565b805460009080156126e3576126cd836124776001846139e2565b54600160201b90046001600160e01b031661094a565b60009392505050565b60006106c76126f96110d2565b8360405161190160f01b8152600281019290925260228201526042902090565b60008060008061272b88888888612c95565b92509250925061273b8282612d64565b50909695505050505050565b6001600160a01b03821660009081527fda5d6d87446d81938877f0ee239dac391146dd7466ea30567f72becf06773c00602052604090208054600181019091558181146109d8576040516301d4b62360e61b81526001600160a01b038416600482015260248101829052604401610a25565b60606127c482612e1d565b6028602282019081209192507f4040404040404040404040404040404040404040404040404040404040404040917f888888888888888888888888888888888888888888888888888888888888888016601160f31b60005b82811a82028180015260018101906012190161281c57505050818151166000511660011c8151188152602081019050818151166020511660011c81511881525050919050565b6001600160e01b0319811660009081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00602052604090205460ff1615156001146128ef576001600160e01b0319811660009081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b0060205260409020805460ff19166001179055612908565b604051637967f77d60e11b815260040160405180910390fd5b6040516001600160e01b03198216907f78f84e5b1c5c05be2b5ad3800781dd404d6d6c6302bc755c0fe20f58a33a7f2290600090a250565b600061294a610ead565b90506002810161295a8482613824565b50600381016129698382613824565b50600090555050565b7f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336e61299d8382613824565b507f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336f6129c98282613824565b50506000600080516020613abe8339815191528190557f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d5550565b600061094a8284613a08565b60006001600160e01b038211156123f1576040516306dfcc6560e41b815260e0600482015260248101839052604401610a25565b600080612a80612a62612a55611bdc565b65ffffffffffff166123c0565b612a78612a6e886126b3565b868863ffffffff16565b879190612e41565b915091505b935093915050565b600061094a8284613a2f565b600080612aa4611b17565b805190915015612abb578051602090910120919050565b600080516020613abe833981519152548015612ad75792915050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4709250505090565b600080612b0a611b2d565b805190915015612b21578051602090910120919050565b7f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d548015612ad75792915050565b600081600003612b6157506000919050565b60006001612b6e84612e4f565b901c6001901b90506001818481612b8757612b87613a4f565b048201901c90506001818481612b9f57612b9f613a4f565b048201901c90506001818481612bb757612bb7613a4f565b048201901c90506001818481612bcf57612bcf613a4f565b048201901c90506001818481612be757612be7613a4f565b048201901c90506001818481612bff57612bff613a4f565b048201901c90506001818481612c1757612c17613a4f565b048201901c905061094a81828581612c3157612c31613a4f565b04612ee3565b60005b81831015612c8d576000612c4e8484612ef9565b60008781526020902090915063ffffffff86169082015463ffffffff161115612c7957809250612c87565b612c848160016139f5565b93505b50612c3a565b509392505050565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115612cd05750600091506003905082612d5a565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015612d24573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612d5057506000925060019150829050612d5a565b9250600091508190505b9450945094915050565b6000826003811115612d7857612d78613a65565b03612d81575050565b6001826003811115612d9557612d95613a65565b03612db35760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115612dc757612dc7613a65565b03612de85760405163fce698f760e01b815260048101829052602401610a25565b6003826003811115612dfc57612dfc613a65565b03610711576040516335e2f38360e21b815260048101829052602401610a25565b6060612e2882612f14565b8051613078825260020160011990910190815292915050565b600080612a80858585612f83565b600080608083901c15612e6457608092831c92015b604083901c15612e7657604092831c92015b602083901c15612e8857602092831c92015b601083901c15612e9a57601092831c92015b600883901c15612eac57600892831c92015b600483901c15612ebe57600492831c92015b600283901c15612ed057600292831c92015b600183901c156106c75760010192915050565b6000818310612ef2578161094a565b5090919050565b6000612f086002848418613a7b565b61094a908484166139f5565b60606040519050608081016040526f30313233343536373839616263646566600f526002810190506028815260208101600060288201528260601b925060005b808101820184821a600f81165160018301538060041c5182535050600181019060121901612f54575050919050565b8254600090819080156130c9576000612fa1876124776001856139e2565b60408051808201909152905463ffffffff808216808452600160201b9092046001600160e01b0316602084015291925090871610156130225760405162461bcd60e51b815260206004820152601b60248201527f436865636b706f696e743a2064656372656173696e67206b65797300000000006044820152606401610a25565b805163ffffffff80881691160361306a5784613043886124776001866139e2565b80546001600160e01b0392909216600160201b0263ffffffff9092169190911790556130b9565b6040805180820190915263ffffffff80881682526001600160e01b0380881660208085019182528b54600181018d5560008d81529190912094519151909216600160201b029216919091179101555b602001519250839150612a859050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a5560008a815291822095519251909316600160201b029190931617920191909155905081612a85565b60005b8381101561313d578181015183820152602001613125565b50506000910152565b6000815180845261315e816020860160208601613122565b601f01601f19169290920160200192915050565b60208152600061094a6020830184613146565b60006020828403121561319757600080fd5b5035919050565b80356001600160a01b03811681146131b557600080fd5b919050565b600080604083850312156131cd57600080fd5b6131d68361319e565b946020939093013593505050565b6000806000606084860312156131f957600080fd5b6132028461319e565b92506132106020850161319e565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b600067ffffffffffffffff8084111561325157613251613220565b604051601f8501601f19908116603f0116810190828211818310171561327957613279613220565b8160405280935085815286868601111561329257600080fd5b858560208301376000602087830101525050509392505050565b600082601f8301126132bd57600080fd5b61094a83833560208501613236565b600080600080600060a086880312156132e457600080fd5b853567ffffffffffffffff808211156132fc57600080fd5b61330889838a016132ac565b9650602088013591508082111561331e57600080fd5b61332a89838a016132ac565b95506133386040890161319e565b9450606088013591508082111561334e57600080fd5b61335a89838a016132ac565b9350608088013591508082111561337057600080fd5b5061337d888289016132ac565b9150509295509295909350565b60006020828403121561339c57600080fd5b813567ffffffffffffffff8111156133b357600080fd5b611d76848285016132ac565b6000602082840312156133d157600080fd5b61094a8261319e565b602081526000825160c060208401526133f660e0840182613146565b90506020840151601f19808584030160408601526134148383613146565b9250604086015160608601526060860151608086015260808601519150808584030160a08601526134458383613146565b925060a08601519150808584030160c0860152506134638282613146565b95945050505050565b600080600080600060a0868803121561348457600080fd5b61348d8661319e565b9450602086013567ffffffffffffffff808211156134aa57600080fd5b6134b689838a016132ac565b955060408801359150808211156134cc57600080fd5b61333889838a016132ac565b60ff60f81b881681526000602060e060208401526134f960e084018a613146565b838103604085015261350b818a613146565b606085018990526001600160a01b038816608086015260a0850187905284810360c08601528551808252602080880193509091019060005b8181101561355f57835183529284019291840191600101613543565b50909c9b505050505050505050505050565b6000806040838503121561358457600080fd5b61358d8361319e565b9150602083013580151581146135a257600080fd5b809150509250929050565b600080600080608085870312156135c357600080fd5b6135cc8561319e565b93506135da6020860161319e565b925060408501359150606085013567ffffffffffffffff8111156135fd57600080fd5b8501601f8101871361360e57600080fd5b61361d87823560208401613236565b91505092959194509250565b60008060008060008060c0878903121561364257600080fd5b61364b8761319e565b95506020870135945060408701359350606087013560ff8116811461366f57600080fd5b9598949750929560808101359460a0909101359350915050565b6000806040838503121561369c57600080fd5b823567ffffffffffffffff808211156136b457600080fd5b6136c0868387016132ac565b935060208501359150808211156136d657600080fd5b506136e3858286016132ac565b9150509250929050565b60008060006060848603121561370257600080fd5b833567ffffffffffffffff8082111561371a57600080fd5b613726878388016132ac565b9450602086013591508082111561373c57600080fd5b613748878388016132ac565b9350604086013591508082111561375e57600080fd5b5061376b868287016132ac565b9150509250925092565b6000806040838503121561378857600080fd5b6137918361319e565b915061379f6020840161319e565b90509250929050565b600181811c908216806137bc57607f821691505b60208210810361104057634e487b7160e01b600052602260045260246000fd5b601f8211156109d8576000816000526020600020601f850160051c810160208610156138055750805b601f850160051c820191505b8181101561092c57828155600101613811565b815167ffffffffffffffff81111561383e5761383e613220565b6138528161384c84546137a8565b846137dc565b602080601f831160018114613887576000841561386f5750858301515b600019600386901b1c1916600185901b17855561092c565b600085815260208120601f198616915b828110156138b657888601518255948401946001909101908401613897565b50858210156138d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061391790830184613146565b9695505050505050565b60006020828403121561393357600080fd5b81516001600160e01b03198116811461094a57600080fd5b634e487b7160e01b600052603260045260246000fd5b60008351613973818460208801613122565b602f60f81b9083019081528351613991816001840160208801613122565b01600101949350505050565b600083516139af818460208801613122565b8351908301906139c3818360208801613122565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156106c7576106c76139cc565b808201808211156106c7576106c76139cc565b6001600160e01b03818116838216019080821115613a2857613a286139cc565b5092915050565b6001600160e01b03828116828216039080821115613a2857613a286139cc565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b600082613a9857634e487b7160e01b600052601260045260246000fd5b50049056fe7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477003a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336c423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f66","sourceMap":"586:4577:220:-:0;;;;;;;;;;;;-1:-1:-1;378:22:68;:20;:22::i;:::-;586:4577:220;;1653:314:83;296:66:84;1779:14:83;;;;;;;1775:62;;;1802:35;;-1:-1:-1;;;1802:35:83;;;;;;;;;;;1775:62;1848:9;;1860:16;1848:9;;;:28;1844:119;;;1886:28;;-1:-1:-1;;1886:28:83;1898:16;1886:28;;;;;1927:29;;158:42:400;;;1927:29:83;;146:2:400;131:18;1927:29:83;;;;;;;1844:119;1694:273;1653:314::o;14:192:400:-;586:4577:220;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106101f95760003560e01c806375794a3c1161010d5780639ab24eb0116100a0578063c87b56dd1161006f578063c87b56dd1461057c578063d2f01f191461059c578063d6536540146105bc578063d7a901d3146105d1578063e985e9c5146105f157600080fd5b80639ab24eb014610509578063a22cb46514610529578063b88d4fde14610549578063c3cda5201461055c57600080fd5b806388cc58e4116100dc57806388cc58e4146104935780638e539e8c146104a857806391ddadf4146104c857806395d89b41146104f457600080fd5b806375794a3c146104165780637ecebe001461042b578063848806141461044b57806384b0196e1461046b57600080fd5b806342842e0e116101905780635bb478081161015f5780635bb47808146103695780635c19a95c146103895780636352211e146103a95780636a9a38e6146103c957806370a08231146103f657600080fd5b806342842e0e14610301578063466a18de146103145780634bf5d7e914610334578063587cde1e1461034957600080fd5b806323b872dd116101cc57806323b872dd146102995780633644e515146102ac5780633a46b1a8146102c15780633bf5b8f4146102e157600080fd5b806306fdde03146101fe578063081812fc14610229578063095ea7b31461026157806318160ddd14610276575b600080fd5b34801561020a57600080fd5b50610213610621565b6040516102209190613172565b60405180910390f35b34801561023557600080fd5b50610249610244366004613185565b6106bc565b6040516001600160a01b039091168152602001610220565b61027461026f3660046131ba565b6106cd565b005b34801561028257600080fd5b5061028b610715565b604051908152602001610220565b6102746102a73660046131e4565b610724565b3480156102b857600080fd5b5061028b610934565b3480156102cd57600080fd5b5061028b6102dc3660046131ba565b61093e565b3480156102ed57600080fd5b5061028b6102fc3660046132cc565b610951565b61027461030f3660046131e4565b6109bd565b34801561032057600080fd5b5061027461032f36600461338a565b6109dd565b34801561034057600080fd5b50610213610a3a565b34801561035557600080fd5b506102496103643660046133bf565b610a44565b34801561037557600080fd5b506102746103843660046133bf565b610a4f565b34801561039557600080fd5b506102746103a43660046133bf565b610aa4565b3480156103b557600080fd5b506102496103c4366004613185565b610aae565b3480156103d557600080fd5b506103e96103e43660046133bf565b610ab9565b60405161022091906133da565b34801561040257600080fd5b5061028b6104113660046133bf565b610afb565b34801561042257600080fd5b5061028b610b06565b34801561043757600080fd5b5061028b6104463660046133bf565b610b10565b34801561045757600080fd5b5061027461046636600461346c565b610b4d565b34801561047757600080fd5b50610480610b6a565b60405161022097969594939291906134d8565b34801561049f57600080fd5b50610249610c2d565b3480156104b457600080fd5b5061028b6104c3366004613185565b610c4e565b3480156104d457600080fd5b506104dd610c59565b60405165ffffffffffff9091168152602001610220565b34801561050057600080fd5b50610213610c63565b34801561051557600080fd5b5061028b6105243660046133bf565b610c7b565b34801561053557600080fd5b50610274610544366004613571565b610c86565b6102746105573660046135ad565b610cbf565b34801561056857600080fd5b50610274610577366004613629565b610d09565b34801561058857600080fd5b50610213610597366004613185565b610d17565b3480156105a857600080fd5b506102746105b7366004613689565b610d48565b3480156105c857600080fd5b50610213610d9b565b3480156105dd57600080fd5b506102746105ec3660046136ed565b610da5565b3480156105fd57600080fd5b5061061161060c366004613775565b610ea1565b6040519015158152602001610220565b606061062b610ead565b6002018054610639906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054610665906137a8565b80156106b25780601f10610687576101008083540402835291602001916106b2565b820191906000526020600020905b81548152906001019060200180831161069557829003601f168201915b5050505050905090565b60006106c782610ed1565b92915050565b6001600160a01b038216158015906106e957506106e933610f1e565b1561070757604051638043dfaf60e01b815260040160405180910390fd5b6107118282610f9a565b5050565b600061071f610fa6565b905090565b600061072f82610fc5565b9050836001600160a01b0316816001600160a01b0316146107625760405162a1148160e81b815260040160405180910390fd5b60008061076e84611060565b91509150610793818761077e3390565b6001600160a01b039081169116811491141790565b6107be576107a18633610ea1565b6107be57604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b0385166107e557604051633a954ecd60e21b815260040160405180910390fd5b6107f28686866001611088565b80156107fd57600082555b610805610ead565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610831610ead565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610868610ead565b60008681526004919091016020526040812091909155600160e11b841690036108de5760018401610897610ead565b6000828152600491909101602052604081205490036108dc576108b8610ead565b5481146108dc57836108c8610ead565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461092c86868660016110c7565b505050505050565b600061071f6110d2565b600061094a83836110dc565b9392505050565b600080600080516020613a9e83398151915280549091506001600160a01b031633146109905760405163443e750b60e11b815260040160405180910390fd5b61099861117a565b91506109a887878488888861118a565b6109b33360016112e1565b5095945050505050565b6109d883838360405180602001604052806000815250610cbf565b505050565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae300546001600160a01b03163314610a2e576040516365f4906560e01b81523360048201526024015b60405180910390fd5b610a3781611431565b50565b606061071f6114a2565b60006106c78261153a565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae300546001600160a01b03163314610a9b576040516365f4906560e01b8152336004820152602401610a25565b610a3781611577565b610a3733826115e1565b60006106c782610fc5565b610af26040518060c001604052806060815260200160608152602001600081526020016000815260200160608152602001606081525090565b6106c78261167b565b60006106c782611986565b600061071f61117a565b6001600160a01b03811660009081527fda5d6d87446d81938877f0ee239dac391146dd7466ea30567f72becf06773c0060205260408120546106c7565b610b56856119ef565b610b638585858585611a2c565b5050505050565b600060608082808083600080516020613abe83398151915254158015610baf57507f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d54155b610bf35760405162461bcd60e51b81526020600482015260156024820152741152540dcc4c8e88155b9a5b9a5d1a585b1a5e9959605a1b6044820152606401610a25565b610bfb611b17565b610c03611b2d565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b600061071f600080516020613a9e833981519152546001600160a01b031690565b60006106c782611b43565b600061071f611bdc565b6060610c6d610ead565b6003018054610639906137a8565b60006106c782611be7565b808015610c975750610c9733610f1e565b15610cb557604051638043dfaf60e01b815260040160405180910390fd5b6107118282611c15565b610cca848484610724565b6001600160a01b0383163b15610d0357610ce684848484611c92565b610d03576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b61092c868686868686611d7e565b6060610d2282611e67565b610d3f57604051630a14c4b560e41b815260040160405180910390fd5b6106c782611ea3565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054600160201b900460ff16610d9157604051630ef4733760e31b815260040160405180910390fd5b610711828261211c565b606061071f612146565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054600160201b900460ff161580610de157303b1515610df0565b8154600163ffffffff90911610155b15610e19578154604051630a8ef77f60e31b815263ffffffff9091166004820152602401610a25565b815463ffffffff191660011782558015610e4057815464ff000000001916600160201b1782555b610e4a858561211c565b610e548584612165565b8015610b6357815464ff0000000019168255604051600181527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15050505050565b600061094a83836121b8565b7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df0090565b6000610edc82611e67565b610ef9576040516333d1c03960e21b815260040160405180910390fd5b610f01610ead565b60009283526006016020525060409020546001600160a01b031690565b60007f0c89d3aad1b583c77a2e9f9fffa651b386c9c29e300bf2a8e2f3de1bb0100a006001600160a01b0383163b15801561094a57506001600160a01b0383166000908152600182016020526040902054158061094a57506001600160a01b038316600090815260018201602052604090205442109392505050565b610711828260016121f5565b600080610fb1610ead565b60010154610fbd610ead565b540303919050565b600080610fd0610ead565b60008481526004820160205260408120549350909150600160e01b831690036110465781600003611040578054831061101c57604051636f96cda160e11b815260040160405180910390fd5b5b60001990920160008181526004840160205260409020549092909150811561101d575b50919050565b50604051636f96cda160e11b815260040160405180910390fd5b600080600061106d610ead565b60009485526006016020525050604090912080549092909150565b6001600160a01b038416158015906110a457506110a484610f1e565b156110c257604051638043dfaf60e01b815260040160405180910390fd5b610d03565b6110c28484836122aa565b600061071f61234c565b60006110e6611bdc565b65ffffffffffff1682106111335760405162461bcd60e51b81526020600482015260146024820152730566f7465733a20667574757265206c6f6f6b75760641b6044820152606401610a25565b61116a61113f836123c0565b6001600160a01b0385166000908152600080516020613ade83398151915260205260409020906123f5565b6001600160e01b03169392505050565b6000611184610ead565b54919050565b6111958660026124a9565b6111a08560006124a9565b6111a9836124cd565b60008481527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477016020908152604080832080546001600160a01b0319166001600160a01b03881690811790915581516080810183528a81528084018a90528083018990524260608201529084527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477029092529091208151600080516020613a9e833981519152929190819061125c9082613824565b50602082015160018201906112719082613824565b5060408281015160028301556060909201516003918201558151808301835285815260208082018690526001600160a01b03881660009081529285019052919020815181906112c09082613824565b50602082015160018201906112d59082613824565b50505050505050505050565b60006112eb610ead565b54905060008290036113105760405163b562e8dd60e01b815260040160405180910390fd5b61131d6000848385611088565b680100000000000000018202611331610ead565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b171761136c610ead565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146113f657808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001016113be565b508160000361141757604051622e076360e81b815260040160405180910390fd5b80611420610ead565b55506109d8905060008483856110c7565b61143c8160016124a9565b7f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477046114678282613824565b507f8fe3adc25723aa6a0b7eb4b4bacf52e92165c180bde5353f7cf606fbf5591f2b816040516114979190613172565b60405180910390a150565b6060436114ad611bdc565b65ffffffffffff16146115025760405162461bcd60e51b815260206004820152601860248201527f566f7465733a2062726f6b656e20636c6f636b206d6f646500000000000000006044820152606401610a25565b5060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b6001600160a01b0390811660009081527f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f6560205260409020541690565b611580816124cd565b600080516020613a9e83398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f64c14256e532eac2ec90ddc4973ed2d3f5623faf7951d90eec38f9b7812f99a79181900360200190a15050565b60006115ec8361153a565b6001600160a01b0384811660008181527f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f65602052604080822080546001600160a01b031916888616908117909155905194955093928516927f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a46109d88183611676866124f4565b6124ff565b6116b46040518060c001604052806060815260200160608152602001600081526020016000815260200160608152602001606081525090565b6001600160a01b03821660009081527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe5747702602090815260408083207f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe574770390925291829020825160c0810190935281549192909181908490611732906137a8565b80601f016020809104026020016040519081016040528092919081815260200182805461175e906137a8565b80156117ab5780601f10611780576101008083540402835291602001916117ab565b820191906000526020600020905b81548152906001019060200180831161178e57829003601f168201915b505050505081526020018360010180546117c4906137a8565b80601f01602080910402602001604051908101604052809291908181526020018280546117f0906137a8565b801561183d5780601f106118125761010080835404028352916020019161183d565b820191906000526020600020905b81548152906001019060200180831161182057829003601f168201915b50505050508152602001836002015481526020018360030154815260200182600001805461186a906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611896906137a8565b80156118e35780601f106118b8576101008083540402835291602001916118e3565b820191906000526020600020905b8154815290600101906020018083116118c657829003601f168201915b505050505081526020018260010180546118fc906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611928906137a8565b80156119755780601f1061194a57610100808354040283529160200191611975565b820191906000526020600020905b81548152906001019060200180831161195857829003601f168201915b505050505081525092505050919050565b60006001600160a01b0382166119af576040516323d3ad8160e21b815260040160405180910390fd5b67ffffffffffffffff6119c0610ead565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b33611a056119fc8361167b565b60400151610aae565b6001600160a01b031614610a375760405163dbfcf17d60e01b815260040160405180910390fd5b611a378460026124a9565b611a428360016124a9565b6001600160a01b03851660009081527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe574770260205260409020600080516020613a9e8339815191529080611a948782613824565b5060018101611aa38682613824565b506001600160a01b0387166000908152600383016020526040902080611ac98682613824565b5060018101611ad88582613824565b506040516001600160a01b038916907f66da702131703ee5e745ecf2f5b98311caa00729edd55541baad49289fc42ed890600090a25050505050505050565b6060600080516020613abe83398151915261062b565b6060600080516020613abe833981519152610c6d565b6000611b4d611bdc565b65ffffffffffff168210611b9a5760405162461bcd60e51b81526020600482015260146024820152730566f7465733a20667574757265206c6f6f6b75760641b6044820152606401610a25565b611bcd611ba6836123c0565b7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67906123f5565b6001600160e01b031692915050565b600061071f43612680565b6001600160a01b0381166000908152600080516020613ade83398151915260205260408120611bcd906126b3565b80611c1e610ead565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290611cc79033908990889088906004016138e4565b6020604051808303816000875af1925050508015611d02575060408051601f3d908101601f19168201909252611cff91810190613921565b60015b611d60573d808015611d30576040519150601f19603f3d011682016040523d82523d6000602084013e611d35565b606091505b508051600003611d58576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490505b949350505050565b83421115611dce5760405162461bcd60e51b815260206004820152601860248201527f566f7465733a207369676e6174757265206578706972656400000000000000006044820152606401610a25565b604080517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60208201526001600160a01b038816918101919091526060810186905260808101859052600090611e4890611e409060a001604051602081830303815290604052805190602001206126ec565b858585612719565b9050611e548187612747565b611e5e81886115e1565b50505050505050565b6000611e71610ead565b54821080156106c75750600160e01b611e88610ead565b60008481526004919091016020526040902054161592915050565b60008181527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477016020526040902054606090600080516020613a9e833981519152906001600160a01b031680611f0b5760405163af5f208f60e01b815260040160405180910390fd5b6001600160a01b03811660009081526002830160205260409020600181018054611f34906137a8565b159050611fd257806001018054611f4a906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611f76906137a8565b8015611fc35780601f10611f9857610100808354040283529160200191611fc3565b820191906000526020600020905b815481529060010190602001808311611fa657829003601f168201915b50505050509350505050919050565b6000836004018054611fe3906137a8565b80601f016020809104026020016040519081016040528092919081815260200182805461200f906137a8565b801561205c5780601f106120315761010080835404028352916020019161205c565b820191906000526020600020905b81548152906001019060200180831161203f57829003601f168201915b505050505090506000815190508060000361208a5760405163cd251ac560e01b815260040160405180910390fd5b81600182038151811061209f5761209f61394b565b6020910101516001600160f81b031916602f60f81b146120f857816120cc856001600160a01b03166127b9565b6040516020016120dd929190613961565b60405160208183030381529060405295505050505050919050565b8161210b856001600160a01b03166127b9565b6040516020016120dd92919061399d565b61212c6380ac58cd60e01b612862565b61213c635b5e139f60e01b612862565b6107118282612940565b6060600080516020613a9e8339815191526004018054610639906137a8565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054600160201b900460ff166121ae57604051630ef4733760e31b815260040160405180910390fd5b6107118282612972565b60006121c2610ead565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b600061220083610aae565b9050811561223f57336001600160a01b0382161461223f5761222281336121b8565b61223f576040516367d9dca160e11b815260040160405180910390fd5b83612248610ead565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6001600160a01b0383166122f0576122ed7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67612a046122e884612a10565b612a44565b50505b6001600160a01b0382166123315761232e7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67612a8d6122e884612a10565b50505b6109d861233d8461153a565b6123468461153a565b836124ff565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f612377612a99565b61237f612aff565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b600063ffffffff8211156123f1576040516306dfcc6560e41b81526020600482015260248101839052604401610a25565b5090565b81546000908181600581111561245257600061241084612b4f565b61241a90856139e2565b60008881526020902090915081015463ffffffff908116908716101561244257809150612450565b61244d8160016139f5565b92505b505b600061246087878585612c37565b9050801561249b57612485876124776001846139e2565b600091825260209091200190565b54600160201b90046001600160e01b031661249e565b60005b979650505050505050565b815182908211156109d8576040516374eb20a760e01b815260040160405180910390fd5b6001600160a01b038116610a37576040516302e47d1560e41b815260040160405180910390fd5b60006106c782610afb565b816001600160a01b0316836001600160a01b0316141580156125215750600081115b156109d8576001600160a01b038316156125d1576001600160a01b0383166000908152600080516020613ade83398151915260205260408120819061256c90612a8d6122e886612a10565b6001600160e01b031691506001600160e01b03169150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516125c6929190918252602082015260400190565b60405180910390a250505b6001600160a01b038216156109d8576001600160a01b0382166000908152600080516020613ade83398151915260205260408120819061261790612a046122e886612a10565b6001600160e01b031691506001600160e01b03169150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051612671929190918252602082015260400190565b60405180910390a25050505050565b600065ffffffffffff8211156123f1576040516306dfcc6560e41b81526030600482015260248101839052604401610a25565b805460009080156126e3576126cd836124776001846139e2565b54600160201b90046001600160e01b031661094a565b60009392505050565b60006106c76126f96110d2565b8360405161190160f01b8152600281019290925260228201526042902090565b60008060008061272b88888888612c95565b92509250925061273b8282612d64565b50909695505050505050565b6001600160a01b03821660009081527fda5d6d87446d81938877f0ee239dac391146dd7466ea30567f72becf06773c00602052604090208054600181019091558181146109d8576040516301d4b62360e61b81526001600160a01b038416600482015260248101829052604401610a25565b60606127c482612e1d565b6028602282019081209192507f4040404040404040404040404040404040404040404040404040404040404040917f888888888888888888888888888888888888888888888888888888888888888016601160f31b60005b82811a82028180015260018101906012190161281c57505050818151166000511660011c8151188152602081019050818151166020511660011c81511881525050919050565b6001600160e01b0319811660009081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00602052604090205460ff1615156001146128ef576001600160e01b0319811660009081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b0060205260409020805460ff19166001179055612908565b604051637967f77d60e11b815260040160405180910390fd5b6040516001600160e01b03198216907f78f84e5b1c5c05be2b5ad3800781dd404d6d6c6302bc755c0fe20f58a33a7f2290600090a250565b600061294a610ead565b90506002810161295a8482613824565b50600381016129698382613824565b50600090555050565b7f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336e61299d8382613824565b507f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336f6129c98282613824565b50506000600080516020613abe8339815191528190557f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d5550565b600061094a8284613a08565b60006001600160e01b038211156123f1576040516306dfcc6560e41b815260e0600482015260248101839052604401610a25565b600080612a80612a62612a55611bdc565b65ffffffffffff166123c0565b612a78612a6e886126b3565b868863ffffffff16565b879190612e41565b915091505b935093915050565b600061094a8284613a2f565b600080612aa4611b17565b805190915015612abb578051602090910120919050565b600080516020613abe833981519152548015612ad75792915050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4709250505090565b600080612b0a611b2d565b805190915015612b21578051602090910120919050565b7f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d548015612ad75792915050565b600081600003612b6157506000919050565b60006001612b6e84612e4f565b901c6001901b90506001818481612b8757612b87613a4f565b048201901c90506001818481612b9f57612b9f613a4f565b048201901c90506001818481612bb757612bb7613a4f565b048201901c90506001818481612bcf57612bcf613a4f565b048201901c90506001818481612be757612be7613a4f565b048201901c90506001818481612bff57612bff613a4f565b048201901c90506001818481612c1757612c17613a4f565b048201901c905061094a81828581612c3157612c31613a4f565b04612ee3565b60005b81831015612c8d576000612c4e8484612ef9565b60008781526020902090915063ffffffff86169082015463ffffffff161115612c7957809250612c87565b612c848160016139f5565b93505b50612c3a565b509392505050565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115612cd05750600091506003905082612d5a565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015612d24573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612d5057506000925060019150829050612d5a565b9250600091508190505b9450945094915050565b6000826003811115612d7857612d78613a65565b03612d81575050565b6001826003811115612d9557612d95613a65565b03612db35760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115612dc757612dc7613a65565b03612de85760405163fce698f760e01b815260048101829052602401610a25565b6003826003811115612dfc57612dfc613a65565b03610711576040516335e2f38360e21b815260048101829052602401610a25565b6060612e2882612f14565b8051613078825260020160011990910190815292915050565b600080612a80858585612f83565b600080608083901c15612e6457608092831c92015b604083901c15612e7657604092831c92015b602083901c15612e8857602092831c92015b601083901c15612e9a57601092831c92015b600883901c15612eac57600892831c92015b600483901c15612ebe57600492831c92015b600283901c15612ed057600292831c92015b600183901c156106c75760010192915050565b6000818310612ef2578161094a565b5090919050565b6000612f086002848418613a7b565b61094a908484166139f5565b60606040519050608081016040526f30313233343536373839616263646566600f526002810190506028815260208101600060288201528260601b925060005b808101820184821a600f81165160018301538060041c5182535050600181019060121901612f54575050919050565b8254600090819080156130c9576000612fa1876124776001856139e2565b60408051808201909152905463ffffffff808216808452600160201b9092046001600160e01b0316602084015291925090871610156130225760405162461bcd60e51b815260206004820152601b60248201527f436865636b706f696e743a2064656372656173696e67206b65797300000000006044820152606401610a25565b805163ffffffff80881691160361306a5784613043886124776001866139e2565b80546001600160e01b0392909216600160201b0263ffffffff9092169190911790556130b9565b6040805180820190915263ffffffff80881682526001600160e01b0380881660208085019182528b54600181018d5560008d81529190912094519151909216600160201b029216919091179101555b602001519250839150612a859050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a5560008a815291822095519251909316600160201b029190931617920191909155905081612a85565b60005b8381101561313d578181015183820152602001613125565b50506000910152565b6000815180845261315e816020860160208601613122565b601f01601f19169290920160200192915050565b60208152600061094a6020830184613146565b60006020828403121561319757600080fd5b5035919050565b80356001600160a01b03811681146131b557600080fd5b919050565b600080604083850312156131cd57600080fd5b6131d68361319e565b946020939093013593505050565b6000806000606084860312156131f957600080fd5b6132028461319e565b92506132106020850161319e565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b600067ffffffffffffffff8084111561325157613251613220565b604051601f8501601f19908116603f0116810190828211818310171561327957613279613220565b8160405280935085815286868601111561329257600080fd5b858560208301376000602087830101525050509392505050565b600082601f8301126132bd57600080fd5b61094a83833560208501613236565b600080600080600060a086880312156132e457600080fd5b853567ffffffffffffffff808211156132fc57600080fd5b61330889838a016132ac565b9650602088013591508082111561331e57600080fd5b61332a89838a016132ac565b95506133386040890161319e565b9450606088013591508082111561334e57600080fd5b61335a89838a016132ac565b9350608088013591508082111561337057600080fd5b5061337d888289016132ac565b9150509295509295909350565b60006020828403121561339c57600080fd5b813567ffffffffffffffff8111156133b357600080fd5b611d76848285016132ac565b6000602082840312156133d157600080fd5b61094a8261319e565b602081526000825160c060208401526133f660e0840182613146565b90506020840151601f19808584030160408601526134148383613146565b9250604086015160608601526060860151608086015260808601519150808584030160a08601526134458383613146565b925060a08601519150808584030160c0860152506134638282613146565b95945050505050565b600080600080600060a0868803121561348457600080fd5b61348d8661319e565b9450602086013567ffffffffffffffff808211156134aa57600080fd5b6134b689838a016132ac565b955060408801359150808211156134cc57600080fd5b61333889838a016132ac565b60ff60f81b881681526000602060e060208401526134f960e084018a613146565b838103604085015261350b818a613146565b606085018990526001600160a01b038816608086015260a0850187905284810360c08601528551808252602080880193509091019060005b8181101561355f57835183529284019291840191600101613543565b50909c9b505050505050505050505050565b6000806040838503121561358457600080fd5b61358d8361319e565b9150602083013580151581146135a257600080fd5b809150509250929050565b600080600080608085870312156135c357600080fd5b6135cc8561319e565b93506135da6020860161319e565b925060408501359150606085013567ffffffffffffffff8111156135fd57600080fd5b8501601f8101871361360e57600080fd5b61361d87823560208401613236565b91505092959194509250565b60008060008060008060c0878903121561364257600080fd5b61364b8761319e565b95506020870135945060408701359350606087013560ff8116811461366f57600080fd5b9598949750929560808101359460a0909101359350915050565b6000806040838503121561369c57600080fd5b823567ffffffffffffffff808211156136b457600080fd5b6136c0868387016132ac565b935060208501359150808211156136d657600080fd5b506136e3858286016132ac565b9150509250929050565b60008060006060848603121561370257600080fd5b833567ffffffffffffffff8082111561371a57600080fd5b613726878388016132ac565b9450602086013591508082111561373c57600080fd5b613748878388016132ac565b9350604086013591508082111561375e57600080fd5b5061376b868287016132ac565b9150509250925092565b6000806040838503121561378857600080fd5b6137918361319e565b915061379f6020840161319e565b90509250929050565b600181811c908216806137bc57607f821691505b60208210810361104057634e487b7160e01b600052602260045260246000fd5b601f8211156109d8576000816000526020600020601f850160051c810160208610156138055750805b601f850160051c820191505b8181101561092c57828155600101613811565b815167ffffffffffffffff81111561383e5761383e613220565b6138528161384c84546137a8565b846137dc565b602080601f831160018114613887576000841561386f5750858301515b600019600386901b1c1916600185901b17855561092c565b600085815260208120601f198616915b828110156138b657888601518255948401946001909101908401613897565b50858210156138d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061391790830184613146565b9695505050505050565b60006020828403121561393357600080fd5b81516001600160e01b03198116811461094a57600080fd5b634e487b7160e01b600052603260045260246000fd5b60008351613973818460208801613122565b602f60f81b9083019081528351613991816001840160208801613122565b01600101949350505050565b600083516139af818460208801613122565b8351908301906139c3818360208801613122565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156106c7576106c76139cc565b808201808211156106c7576106c76139cc565b6001600160e01b03818116838216019080821115613a2857613a286139cc565b5092915050565b6001600160e01b03828116828216039080821115613a2857613a286139cc565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b600082613a9857634e487b7160e01b600052601260045260246000fd5b50049056fe7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477003a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336c423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f66","sourceMap":"586:4577:220:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:116:124;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3498:132;;;;;;;;;;-1:-1:-1;3498:132:124;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;1119:32:400;;;1101:51;;1089:2;1074:18;3498:132:124;955:203:400;3496:266:220;;;;;;:::i;:::-;;:::i;:::-;;1503:93:124;;;;;;;;;;;;;:::i;:::-;;;1746:25:400;;;1734:2;1719:18;1503:93:124;1600:177:400;4893:2680:124;;;;;;:::i;:::-;;:::i;2586:105:220:-;;;;;;;;;;;;;:::i;650:159:77:-;;;;;;;;;;-1:-1:-1;650:159:77;;;;;:::i;:::-;;:::i;1670:346:220:-;;;;;;;;;;-1:-1:-1;1670:346:220;;;;;:::i;:::-;;:::i;7656:167:124:-;;;;;;:::i;:::-;;:::i;2895:91:220:-;;;;;;;;;;-1:-1:-1;2895:91:220;;;;;:::i;:::-;;:::i;387:96:77:-;;;;;;;;;;;;;:::i;1008:111::-;;;;;;;;;;-1:-1:-1;1008:111:77;;;;;:::i;:::-;;:::i;1137:87:220:-;;;;;;;;;;-1:-1:-1;1137:87:220;;;;;:::i;:::-;;:::i;1148:95:77:-;;;;;;;;;;-1:-1:-1;1148:95:77;;;;;:::i;:::-;;:::i;2867:152:124:-;;;;;;;;;;-1:-1:-1;2867:152:124;;;;;:::i;:::-;;:::i;2050:108:220:-;;;;;;;;;;-1:-1:-1;2050:108:220;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1673:107:124:-;;;;;;;;;;-1:-1:-1;1673:107:124;;;;;:::i;:::-;;:::i;1549:87:220:-;;;;;;;;;;;;;:::i;2475:107::-;;;;;;;;;;-1:-1:-1;2475:107:220;;;;;:::i;:::-;;:::i;2192:279::-;;;;;;;;;;-1:-1:-1;2192:279:220;;;;;:::i;:::-;;:::i;4514:801:143:-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;1258:85:220:-;;;;;;;;;;;;;:::i;838:141:77:-;;;;;;;;;;-1:-1:-1;838:141:77;;;;;:::i;:::-;;:::i;276:80::-;;;;;;;;;;;;;:::i;:::-;;;8345:14:400;8333:27;;;8315:46;;8303:2;8288:18;276:80:77;8171:196:400;2199:120:124;;;;;;;;;;;;;:::i;512:109:77:-;;;;;;;;;;-1:-1:-1;512:109:77;;;;;:::i;:::-;;:::i;3766:281:220:-;;;;;;;;;;-1:-1:-1;3766:281:220;;;;;:::i;:::-;;:::i;8372:348:124:-;;;;;;:::i;:::-;;:::i;1272:214:77:-;;;;;;;;;;-1:-1:-1;1272:214:77;;;;;:::i;:::-;;:::i;3121:196:220:-;;;;;;;;;;-1:-1:-1;3121:196:220;;;;;:::i;:::-;;:::i;869:157:124:-;;;;;;;;;;-1:-1:-1;869:157:124;;;;;:::i;:::-;;:::i;3020:97:220:-;;;;;;;;;;;;;:::i;717:212::-;;;;;;;;;;-1:-1:-1;717:212:220;;;;;:::i;:::-;;:::i;4340:167:124:-;;;;;;;;;;-1:-1:-1;4340:167:124;;;;;:::i;:::-;;:::i;:::-;;;11745:14:400;;11738:22;11720:41;;11708:2;11693:18;4340:167:124;11580:187:400;2020:116:124;2074:13;2102:23;:21;:23::i;:::-;:29;;2095:36;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:116;:::o;3498:132::-;3582:7;3604:21;3617:7;3604:12;:21::i;:::-;3597:28;3498:132;-1:-1:-1;;3498:132:124:o;3496:266:220:-;-1:-1:-1;;;;;3636:16:220;;;;;;:48;;;3656:28;3673:10;3656:16;:28::i;:::-;3632:93;;;3701:17;;-1:-1:-1;;;3701:17:220;;;;;;;;;;;3632:93;3731:26;3745:2;3749:7;3731:13;:26::i;:::-;3496:266;;:::o;1503:93:124:-;1555:7;1577:14;:12;:14::i;:::-;1570:21;;1503:93;:::o;4893:2680::-;5012:27;5042;5061:7;5042:18;:27::i;:::-;5012:57;;5121:4;-1:-1:-1;;;;;5080:45:124;5096:19;-1:-1:-1;;;;;5080:45:124;;5076:92;;5140:28;;-1:-1:-1;;;5140:28:124;;;;;;;;;;;5076:92;5183:27;5218:23;5250:35;5277:7;5250:26;:35::i;:::-;5175:110;;;;5374:68;5399:15;5416:4;5422:19;29364:10:125;;29282:97;5422:19:124;-1:-1:-1;;;;;11870:32:125;;;11728:28;;11985:20;;12007:30;;11982:56;;11461:587;5374:68:124;5369:181;;5455:43;5472:4;29364:10:125;4340:167:124;:::i;5455:43::-;5450:100;;5515:35;;-1:-1:-1;;;5515:35:124;;;;;;;;;;;5450:100;-1:-1:-1;;;;;5561:16:124;;5557:52;;5586:23;;-1:-1:-1;;;5586:23:124;;;;;;;;;;;5557:52;5616:43;5638:4;5644:2;5648:7;5657:1;5616:21;:43::i;:::-;5734:15;5731:135;;;5856:1;5835:19;5828:30;5731:135;6206:23;:21;:23::i;:::-;-1:-1:-1;;;;;6206:48:124;;;;;;:42;;;;;:48;;;;;6204:50;;-1:-1:-1;;6204:50:124;;;6292:23;:21;:23::i;:::-;-1:-1:-1;;;;;6292:46:124;;;;;;:42;;;;;:46;;;;;;6290:48;;;;;;10229:11:125;10204:23;10200:41;10187:63;-1:-1:-1;;;10187:63:125;6566:23:124;:21;:23::i;:::-;:50;;;;:41;;;;;:50;;;;;:184;;;;-1:-1:-1;;;6855:47:124;;:52;;6851:625;;6951:1;6941:11;;7056:23;:21;:23::i;:::-;:54;;;;:41;;;;;:54;;;;;;:59;;7052:416;;7196:23;:21;:23::i;:::-;:37;7181:52;;7177:281;;7426:19;7341:23;:21;:23::i;:::-;:82;;;;:41;;;;;:82;;;;;:104;7177:281;6909:567;6851:625;7512:7;7508:2;-1:-1:-1;;;;;7493:27:124;7502:4;-1:-1:-1;;;;;7493:27:124;;;;;;;;;;;7526:42;7547:4;7553:2;7557:7;7566:1;7526:20;:42::i;:::-;5006:2567;;;4893:2680;;;:::o;2586:105:220:-;2637:14;2666:20;:18;:20::i;650:159:77:-;749:7;771:33;785:7;794:9;771:13;:33::i;:::-;764:40;650:159;-1:-1:-1;;;650:159:77:o;1670:346:220:-;1860:15;;-1:-1:-1;;;;;;;;;;;618:10:221;;;;-1:-1:-1;;;;;;618:10:221;604;:24;600:84;;645:32;;-1:-1:-1;;;645:32:221;;;;;;;;;;;600:84;1893:14:220::1;:12;:14::i;:::-;1883:24;;1913:72;1924:4;1930:3;1935:7;1944:5;1951:16;1969:15;1913:10;:72::i;:::-;1991:20;1997:10;2009:1;1991:5;:20::i;:::-;524:171:221::0;1670:346:220;;;;;;;:::o;7656:167:124:-;7779:39;7796:4;7802:2;7806:7;7779:39;;;;;;;;;;;;:16;:39::i;:::-;7656:167;;;:::o;2895:91:220:-;284:66:97;438:29:95;-1:-1:-1;;;;;438:29:95;279:10;:22;275:79;;318:29;;-1:-1:-1;;;318:29:95;;336:10;318:29;;;1101:51:400;1074:18;;318:29:95;;;;;;;;275:79;2962:19:220::1;2977:3;2962:14;:19::i;:::-;2895:91:::0;:::o;387:96:77:-;438:13;466:12;:10;:12::i;1008:111::-;1073:7;1095:19;1106:7;1095:10;:19::i;1137:87:220:-;284:66:97;438:29:95;-1:-1:-1;;;;;438:29:95;279:10;:22;275:79;;318:29;;-1:-1:-1;;;318:29:95;;336:10;318:29;;;1101:51:400;1074:18;;318:29:95;955:203:400;275:79:95;1199:20:220::1;1211:7;1199:11;:20::i;1148:95:77:-:0;1206:32;1216:10;1228:9;1206;:32::i;2867:152:124:-;2947:7;2985:27;3004:7;2985:18;:27::i;2050:108:220:-;2110:12;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2110:12:220;2137:16;2147:5;2137:9;:16::i;1673:107:124:-;1736:7;1758:17;1769:5;1758:10;:17::i;1549:87:220:-;1595:7;1617:14;:12;:14::i;2475:107::-;-1:-1:-1;;;;;526:37:142;;2529:14:220;526:37:142;;;1554:66;526:37;;;;;;2558:19:220;436:132:142;2192:279:220;2373:22;2389:5;2373:15;:22::i;:::-;2401:65;2414:5;2421:4;2427:3;2432:16;2450:15;2401:12;:65::i;:::-;2192:279;;;;;:::o;4514:801:143:-;4603:13;4624:18;;4603:13;;;4624:18;-1:-1:-1;;;;;;;;;;;5007:34:143;:39;:93;;;;-1:-1:-1;5058:37:143;;:42;5007:93;4992:145;;;;-1:-1:-1;;;4992:145:143;;12359:2:400;4992:145:143;;;12341:21:400;12398:2;12378:18;;;12371:30;-1:-1:-1;;;12417:18:400;;;12410:51;12478:18;;4992:145:143;12157:345:400;4992:145:143;5183:13;:11;:13::i;:::-;5204:16;:14;:16::i;:::-;5288;;;5278:1;5288:16;;;;;;;;;-1:-1:-1;;;5144:166:143;;;-1:-1:-1;5144:166:143;;-1:-1:-1;5228:13:143;;-1:-1:-1;5257:4:143;;-1:-1:-1;5278:1:143;-1:-1:-1;5288:16:143;-1:-1:-1;5144:166:143;-1:-1:-1;4514:801:143:o;1258:85:220:-;1303:7;1325:13;-1:-1:-1;;;;;;;;;;;1069:10:221;-1:-1:-1;;;;;1069:10:221;;931:153;838:141:77;922:7;944:30;964:9;944:19;:30::i;276:80::-;322:6;343:8;:6;:8::i;2199:120:124:-;2255:13;2283:23;:21;:23::i;:::-;:31;;2276:38;;;;;:::i;512:109:77:-;576:7;598:18;608:7;598:9;:18::i;3766:281:220:-;3912:8;:40;;;;;3924:28;3941:10;3924:16;:28::i;:::-;3908:85;;;3969:17;;-1:-1:-1;;;3969:17:220;;;;;;;;;;;3908:85;3999:43;4023:8;4033;3999:23;:43::i;8372:348:124:-;8519:31;8532:4;8538:2;8542:7;8519:12;:31::i;:::-;-1:-1:-1;;;;;8560:14:124;;;:19;8556:160;;8592:56;8623:4;8629:2;8633:7;8642:5;8592:30;:56::i;:::-;8587:129;;8667:40;;-1:-1:-1;;;8667:40:124;;;;;;;;;;;8587:129;8372:348;;;;:::o;1272:214:77:-;1432:49;1447:9;1458:5;1465:6;1473:1;1476;1479;1432:14;:49::i;3121:196:220:-;3202:13;3228:16;3236:7;3228;:16::i;:::-;3223:59;;3253:29;;-1:-1:-1;;;3253:29:220;;;;;;;;;;;3223:59;3296:16;3304:7;3296;:16::i;869:157:124:-;296:66:84;1263:42:83;-1:-1:-1;;;1263:42:83;;;;1258:100;;1320:38;;-1:-1:-1;;;1320:38:83;;;;;;;;;;;1258:100;981:40:124::1;1006:5;1013:7;981:24;:40::i;3020:97:220:-:0;3068:13;3096:16;:14;:16::i;717:212::-;296:66:84;540:14:83;;-1:-1:-1;;;540:14:83;;;;539:15;;564:53;;2049:4;2041:25;:30;;564:53;;;581:9;;594:1;581:9;;;;:14;;564:53;560:124;;;667:9;;634:43;;-1:-1:-1;;;634:43:83;;667:9;;;;634:43;;;12651:42:400;12624:18;;634:43:83;12507:192:400;560:124:83;689:13;;-1:-1:-1;;689:13:83;701:1;689:13;;;708:56;;;;736:21;;-1:-1:-1;;736:21:83;-1:-1:-1;;;736:21:83;;;708:56;852:38:220::1;877:4;883:6;852:24;:38::i;:::-;896:28;910:4;916:7;896:13;:28::i;:::-;780:14:83::0;776:84;;;804:22;;-1:-1:-1;;804:22:83;;;839:14;;-1:-1:-1;12651:42:400;;839:14:83;;12639:2:400;12624:18;839:14:83;;;;;;;435:429;;717:212:220;;;:::o;4340:167:124:-;4449:4;4468:34;4486:5;4493:8;4468:17;:34::i;1689:139:127:-;293:66;;1689:139::o;22504:230:125:-;22582:7;22602:16;22610:7;22602;:16::i;:::-;22597:64;;22627:34;;-1:-1:-1;;;22627:34:125;;;;;;;;;;;22597:64;22675:23;:21;:23::i;:::-;:48;;;;:39;;:48;;-1:-1:-1;22675:48:125;;;:54;-1:-1:-1;;;;;22675:54:125;;22504:230::o;1755:435:202:-;1822:4;280:66:204;-1:-1:-1;;;;;2053:20:202;;;:25;:132;;;;-1:-1:-1;;;;;;2089:30:202;;;;;;:20;;;:30;;;;;;:35;;:95;;-1:-1:-1;;;;;;2154:30:202;;;;;;:20;;;:30;;;;;;2136:15;:48;2040:145;1755:435;-1:-1:-1;;;1755:435:202:o;3236:128:124:-;3332:27;3341:2;3345:7;3354:4;3332:8;:27::i;2978:351:125:-;3025:7;;3256:23;:21;:23::i;:::-;:36;;;3208:23;:21;:23::i;:::-;:37;:84;:110;;2978:351;-1:-1:-1;2978:351:125:o;7829:1501::-;7905:14;7967:32;8002:23;:21;:23::i;:::-;8043:29;;;;:20;;;:29;;;;;;;-1:-1:-1;7967:58:125;;-1:-1:-1;;;;8108:24:125;;:29;;8104:1172;;8229:6;8239:1;8229:11;8225:791;;8269:16;;8258:27;;8254:83;;8306:31;;-1:-1:-1;;;8306:31:125;;;;;;;;;;;8254:83;8824:182;-1:-1:-1;;8903:9:125;;;8882:31;;;;:20;;;:31;;;;;;8903:9;;8882:31;;-1:-1:-1;8941:25:125;;8824:182;8941:25;;8980:13;7829:1501;;;:::o;8104:1172::-;7959:1323;9294:31;;-1:-1:-1;;;9294:31:125;;;;;;;;;;;12148:478;12244:27;12273:23;12306:38;12347:30;:28;:30::i;:::-;:62;;;;:53;;:62;;-1:-1:-1;;12347:62:125;;;;12590:26;;12347:62;;12590:26;;-1:-1:-1;12148:478:125:o;4051:352:220:-;-1:-1:-1;;;;;4196:18:220;;;;;;:44;;;4218:22;4235:4;4218:16;:22::i;:::-;4192:139;;;4307:17;;-1:-1:-1;;;4307:17:220;;;;;;;;;;;4192:139;4337:61;8372:348:124;4407:262:220;4556:41;4577:4;4583:2;4587:9;4556:20;:41::i;3292:103:143:-;3345:7;3367:23;:21;:23::i;3995:301:78:-;4089:7;4124:8;:6;:8::i;:::-;4112:20;;:9;:20;4104:53;;;;-1:-1:-1;;;4104:53:78;;13112:2:400;4104:53:78;;;13094:21:400;13151:2;13131:18;;;13124:30;-1:-1:-1;;;13170:18:400;;;13163:50;13230:18;;4104:53:78;12910:344:400;4104:53:78;4176:115;4255:28;4273:9;4255:17;:28::i;:::-;-1:-1:-1;;;;;4176:51:78;;;;;;-1:-1:-1;;;;;;;;;;;4176:51:78;;;;;;:69;:115::i;:::-;-1:-1:-1;;;;;4163:128:78;;3995:301;-1:-1:-1;;;3995:301:78:o;4035:119:125:-;4090:7;4112:23;:21;:23::i;:::-;:37;;4035:119;-1:-1:-1;4035:119:125:o;1260:723:221:-;1457:30;1479:4;1485:1;1457:21;:30::i;:::-;1493:29;1515:3;1520:1;1493:21;:29::i;:::-;1528;1551:5;1528:22;:29::i;:::-;1564:35;1635:26;;;:17;:26;;;;;;;;:34;;-1:-1:-1;;;;;;1635:34:221;-1:-1:-1;;;;;1635:34:221;;;;;;;;1702:123;;;;;;;;;;;;;;;;;;;;;;1803:15;1702:123;;;;1675:24;;;:17;:24;;;;;;:150;;-1:-1:-1;;;;;;;;;;;847:12:222;1702:123:221;1675:24;;;:150;;:24;:150;:::i;:::-;-1:-1:-1;1675:150:221;;;;;;;;;;;;:::i;:::-;-1:-1:-1;1675:150:221;;;;;;;;;;;;;;;;;;;1857:121;;;;;;;;;;-1:-1:-1;1857:121:221;;;;;;-1:-1:-1;;;;;1831:23:221;;-1:-1:-1;1831:23:221;;;:16;;;:23;;;;;:147;;:23;;:147;;:23;:147;:::i;:::-;-1:-1:-1;1831:147:221;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;;;;;1260:723:221:o;15799:2642:125:-;15867:20;15890:23;:21;:23::i;:::-;:37;;-1:-1:-1;15890:37:125;15937:13;;;15933:44;;15959:18;;-1:-1:-1;;;15959:18:125;;;;;;;;;;;15933:44;15984:61;16014:1;16018:2;16022:12;16036:8;15984:21;:61::i;:::-;16474:32;16454:53;;16396:23;:21;:23::i;:::-;-1:-1:-1;;;;;16396:46:125;;;;;;:42;;;;;:46;;;;;;:111;;;;;;;;;10229:11;10204:23;10200:41;-1:-1:-1;10624:15:125;;10598:24;10594:46;10197:52;10187:63;16707:23;:21;:23::i;:::-;:71;;;;:41;;;;;:71;;;;;:188;;;;-1:-1:-1;;;;;17416:25:125;;;16942:23;;;;16758:12;;17416:25;;17602;16707:71;;17488:260;18026:1;18012:12;18008:20;17977:275;18058:3;18049:7;18046:16;17977:275;;18234:7;18224:8;18221:1;18194:25;18191:1;18188;18183:59;18100:1;18087:15;17977:275;;;17981:57;18271:8;18283:1;18271:13;18267:45;;18293:19;;-1:-1:-1;;;18293:19:125;;;;;;;;;;;18267:45;18361:3;18321:23;:21;:23::i;:::-;:43;-1:-1:-1;18376:60:125;;-1:-1:-1;18321:37:125;18409:2;18413:12;18427:8;18376:20;:60::i;523:183:223:-;581:29;603:3;608:1;581:21;:29::i;:::-;617:37;:43;657:3;617:37;:43;:::i;:::-;;671:30;697:3;671:30;;;;;;:::i;:::-;;;;;;;;523:183;:::o;3007:221:78:-;3052:13;3138:12;3126:8;:6;:8::i;:::-;:24;;;3118:61;;;;-1:-1:-1;;;3118:61:78;;15656:2:400;3118:61:78;;;15638:21:400;15695:2;15675:18;;;15668:30;15734:26;15714:18;;;15707:54;15778:18;;3118:61:78;15454:348:400;3118:61:78;-1:-1:-1;3185:38:78;;;;;;;;;;;;;;;;;;3007:221::o;5254:129::-;-1:-1:-1;;;;;5336:42:78;;;5314:7;5336:42;;;219:52:79;5336:42:78;;;;;;;;5254:129::o;699:228:221:-;752:31;775:7;752:22;:31::i;:::-;-1:-1:-1;;;;;;;;;;;860:20:221;;-1:-1:-1;;;;;860:20:221;;-1:-1:-1;;;;;;860:20:221;;;;;;;891:31;;;1101:51:400;;;891:31:221;;;;;;1089:2:400;891:31:221;;;746:181;699:228;:::o;6612:401:78:-;6732:19;6754;6765:7;6754:10;:19::i;:::-;-1:-1:-1;;;;;6779:42:78;;;:33;:42;;;219:52:79;6779:42:78;;;;;;:54;;-1:-1:-1;;;;;;6779:54:78;;;;;;;;;;6845:48;;6732:41;;-1:-1:-1;6779:54:78;6845:48;;;;;;6779:33;6845:48;6899:68;6918:11;6931:9;6942:24;6958:7;6942:15;:24::i;:::-;6899:18;:68::i;2658:580:221:-;2715:12;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2715:12:221;-1:-1:-1;;;;;2779:62:221;;2735:41;2779:62;;;:55;:62;;;;;;;;2899:54;:61;;;;;;;2980:253;;;;;;;;;;2779:62;;2899:61;;2980:253;;2779:62;;2980:253;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3031:9;:13;;2980:253;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3063:9;:17;;;2980:253;;;;3101:9;:19;;;2980:253;;;;3148:8;:25;;2980:253;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3200:8;:24;;2980:253;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2967:266;;;;2658:580;;;:::o;3333:242:125:-;3391:7;-1:-1:-1;;;;;3410:19:125;;3406:60;;3438:28;;-1:-1:-1;;;3438:28:125;;;;;;;;;;;3406:60;564:13;3485:23;:21;:23::i;:::-;:42;;:49;3528:5;-1:-1:-1;;;;;3485:49:125;-1:-1:-1;;;;;3485:49:125;;;;;;;;;;;;;:85;3472:98;;3333:242;;;:::o;4986:175:220:-;5088:10;5050:34;5059:16;5069:5;5059:9;:16::i;:::-;:24;;;5050:8;:34::i;:::-;-1:-1:-1;;;;;5050:48:220;;5046:111;;5115:35;;-1:-1:-1;;;5115:35:220;;;;;;;;;;;1987:667:221;2165:30;2187:4;2193:1;2165:21;:30::i;:::-;2201:29;2223:3;2228:1;2201:21;:29::i;:::-;-1:-1:-1;;;;;2352:24:221;;2237:35;2352:24;;;:17;:24;;;;;-1:-1:-1;;;;;;;;;;;847:12:222;2352:24:221;2382:21;2399:4;2352:24;2382:21;:::i;:::-;-1:-1:-1;2409:13:221;;;:19;2425:3;2409:13;:19;:::i;:::-;-1:-1:-1;;;;;;2486:23:221;;2435:48;2486:23;;;:16;;;:23;;;;;;2515:44;2543:16;2486:23;2515:44;:::i;:::-;-1:-1:-1;2565:24:221;;;:42;2592:15;2565:24;:42;:::i;:::-;-1:-1:-1;2619:30:221;;-1:-1:-1;;;;;2619:30:221;;;;;;;;2159:495;;;1987:667;;;;;:::o;5525:115:143:-;5579:13;-1:-1:-1;;;;;;;;;;;5607:22:143;7824:139;5853:121;5910:13;-1:-1:-1;;;;;;;;;;;5938:22:143;7824:139;4906:274:78;4985:7;5020:8;:6;:8::i;:::-;5008:20;;:9;:20;5000:53;;;;-1:-1:-1;;;5000:53:78;;13112:2:400;5000:53:78;;;13094:21:400;13151:2;13131:18;;;13124:30;-1:-1:-1;;;13170:18:400;;;13163:50;13230:18;;5000:53:78;12910:344:400;5000:53:78;5072:103;5139:28;5157:9;5139:17;:28::i;:::-;5072:39;;:57;:103::i;:::-;-1:-1:-1;;;;;5059:116:78;;4906:274;-1:-1:-1;;4906:274:78:o;2764:98::-;2805:6;2826:31;2844:12;2826:17;:31::i;3482:146::-;-1:-1:-1;;;;;3563:51:78;;3541:7;3563:51;;;-1:-1:-1;;;;;;;;;;;3563:51:78;;;;;:60;;:58;:60::i;3933:269:124:-;4123:8;4035:23;:21;:23::i;:::-;29364:10:125;4035:63:124;;;;:42;;;;;:63;;;;;;;;-1:-1:-1;;;;;4035:85:124;;;;;;;;;;;;:96;;-1:-1:-1;;4035:96:124;;;;;;;;;;;4142:55;;11745:14:400;;11738:22;11720:41;;4035:85:124;;29364:10:125;;4142:55:124;;11693:18:400;4142:55:124;;;;;;;3933:269;;:::o;14707:674:125:-;14870:139;;-1:-1:-1;;;14870:139:125;;14848:4;;-1:-1:-1;;;;;14870:56:125;;;;;:139;;29364:10;;14965:4;;14979:7;;14996:5;;14870:139;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14870:139:125;;;;;;;;-1:-1:-1;;14870:139:125;;;;;;;;;;;;:::i;:::-;;;14860:517;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15192:6;:13;15209:1;15192:18;15188:183;;15229:40;;-1:-1:-1;;;15229:40:125;;;;;;;;;;;15188:183;15345:6;15339:13;15330:6;15326:2;15322:15;15315:38;14860:517;-1:-1:-1;;;;;;15061:83:125;-1:-1:-1;;;15061:83:125;;-1:-1:-1;14860:517:125;14707:674;;;;;;:::o;5453:467:78:-;5628:6;5609:15;:25;;5601:62;;;;-1:-1:-1;;;5601:62:78;;16798:2:400;5601:62:78;;;16780:21:400;16837:2;16817:18;;;16810:30;16876:26;16856:18;;;16849:54;16920:18;;5601:62:78;16596:348:400;5601:62:78;5743:58;;;2310:71;5743:58;;;17180:25:400;-1:-1:-1;;;;;17241:32:400;;17221:18;;;17214:60;;;;17290:18;;;17283:34;;;17333:18;;;17326:34;;;5669:14:78;;5686:157;;5707:103;;17152:19:400;;5743:58:78;;;;;;;;;;;;5733:69;;;;;;5707:16;:103::i;:::-;5818:1;5827;5836;5686:13;:157::i;:::-;5669:174;;5850:31;5867:6;5875:5;5850:16;:31::i;:::-;5887:28;5897:6;5905:9;5887;:28::i;:::-;5595:325;5453:467;;;;;;:::o;11064:301:125:-;11129:4;11200:23;:21;:23::i;:::-;:37;11190:47;;11154:187;;;;;-1:-1:-1;;;11268:23:125;:21;:23::i;:::-;:50;;;;:41;;;;;:50;;;;;;:68;:73;11141:200;11064:301;-1:-1:-1;;11064:301:125:o;902:940:223:-;996:35;1089:26;;;:17;:26;;;;;;975:13;;-1:-1:-1;;;;;;;;;;;847:12:222;-1:-1:-1;;;;;1089:26:223;;1122:66;;1161:27;;-1:-1:-1;;;1161:27:223;;;;;;;;;;;1122:66;-1:-1:-1;;;;;1235:31:223;;1195:37;1235:31;;;:17;;;:31;;;;;1328:9;;;1322:23;;;;;:::i;:::-;:28;;-1:-1:-1;1318:50:223;;1359:5;:9;;1352:16;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;902:940;;;:::o;1318:50::-;1375:24;1402:2;:13;;1375:40;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1422:14;1445:10;1439:24;1422:41;;1473:6;1483:1;1473:11;1469:54;;1493:30;;-1:-1:-1;;;1493:30:223;;;;;;;;;;;1469:54;1598:10;1619:1;1610:6;:10;1592:29;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;;;;;1592:29:223;-1:-1:-1;;;1592:37:223;1588:244;;1672:10;1689:37;:12;-1:-1:-1;;;;;1689:35:223;;:37::i;:::-;1658:69;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1641:86;;;;;;;902:940;;;:::o;1588:244::-;1773:10;1785:37;:12;-1:-1:-1;;;;;1785:35:223;;:37::i;:::-;1759:64;;;;;;;;;:::i;1030:282:124:-;1135:25;-1:-1:-1;;;1135:13:124;:25::i;:::-;1200;-1:-1:-1;;;1200:13:124;:25::i;:::-;1273:34;1292:5;1299:7;1273:18;:34::i;710:119:223:-;759:13;-1:-1:-1;;;;;;;;;;;787:37:223;;780:44;;;;;:::i;2725:153:143:-;296:66:84;1263:42:83;-1:-1:-1;;;1263:42:83;;;;1258:100;;1320:38;;-1:-1:-1;;;1320:38:83;;;;;;;;;;;1258:100;2835:38:143::1;2859:4;2865:7;2835:23;:38::i;22314:186:125:-:0;22417:4;22436:23;:21;:23::i;:::-;-1:-1:-1;;;;;22436:49:125;;;;;;;:42;;;;;:49;;;;;;;;:59;;;;;;;;;;-1:-1:-1;22436:59:125;;;;;22314:186::o;23284:439::-;23390:13;23406:17;23415:7;23406:8;:17::i;:::-;23390:33;;23434:13;23430:184;;;29364:10;-1:-1:-1;;;;;23459:28:125;;;23455:159;;23502:45;23520:5;29364:10;23502:17;:45::i;:::-;23497:117;;23568:35;;-1:-1:-1;;;23568:35:125;;;;;;;;;;;23497:117;23677:2;23620:23;:21;:23::i;:::-;:48;;;;:39;;;;;:48;;;;;;:59;;-1:-1:-1;;;;;;23620:59:125;-1:-1:-1;;;;;23620:59:125;;;;;;23690:28;23620:48;;23690:28;;;;;;;;;;23620:48;23690:28;23384:339;23284:439;;;:::o;7237:491:78:-;-1:-1:-1;;;;;7352:18:78;;7348:151;;7380:112;7395:39;7444:4;7458:26;7477:6;7458:18;:26::i;:::-;7380:5;:112::i;:::-;;;7348:151;-1:-1:-1;;;;;7508:16:78;;7504:154;;7534:117;7549:39;7598:9;7617:26;7636:6;7617:18;:26::i;7534:117::-;;;7504:154;7663:60;7682:16;7693:4;7682:10;:16::i;:::-;7700:14;7711:2;7700:10;:14::i;:::-;7716:6;7663:18;:60::i;3399:268:143:-;3454:7;2073:107;3545:17;:15;:17::i;:::-;3574:20;:18;:20::i;:::-;3501:153;;;;;;18897:25:400;;;;18938:18;;18931:34;;;;18981:18;;;18974:34;3606:13:143;19024:18:400;;;19017:34;3639:4:143;19067:19:400;;;19060:61;18869:19;;3501:153:143;;;;;;;;;;;;3482:180;;;;;;3469:193;;3399:268;:::o;15291:213:348:-;15347:6;15377:16;15369:24;;15365:103;;;15416:41;;-1:-1:-1;;;15416:41:348;;15447:2;15416:41;;;19313:36:400;19365:18;;;19358:34;;;19286:18;;15416:41:348;19132:266:400;15365:103:348;-1:-1:-1;15491:5:348;15291:213::o;8964:548:73:-;9090:24;;9061:7;;;9090:24;9177:1;9171:7;;9167:190;;;9188:11;9208:14;9218:3;9208:9;:14::i;:::-;9202:20;;:3;:20;:::i;:::-;13062:28;13115:20;;;13174:4;13161:18;;9188:34;;-1:-1:-1;13157:28:73;;9240:42;;;;;9234:48;;;;9230:121;;;9301:3;9294:10;;9230:121;;;9335:7;:3;9341:1;9335:7;:::i;:::-;9329:13;;9230:121;9180:177;9167:190;9363:11;9377:53;9396:4;9415:3;9420;9425:4;9377:18;:53::i;:::-;9363:67;-1:-1:-1;9444:8:73;;:63;;9459:41;9473:4;9492:7;9498:1;9492:3;:7;:::i;:::-;13062:28;13115:20;;;13174:4;13161:18;;;13157:28;;12962:233;9459:41;:48;-1:-1:-1;;;9459:48:73;;-1:-1:-1;;;;;9459:48:73;9444:63;;;9455:1;9444:63;9437:70;8964:548;-1:-1:-1;;;;;;;8964:548:73:o;418:183:255:-;534:15;;519:4;;534:21;-1:-1:-1;530:66:255;;;564:32;;-1:-1:-1;;;564:32:255;;;;;;;;;;;737:119;-1:-1:-1;;;;;797:18:255;;793:58;;824:27;;-1:-1:-1;;;824:27:255;;;;;;;;;;;4673:135:220;4763:7;4785:18;4795:7;4785:9;:18::i;7806:698:78:-;7918:2;-1:-1:-1;;;;;7910:10:78;:4;-1:-1:-1;;;;;7910:10:78;;;:24;;;;;7933:1;7924:6;:10;7910:24;7906:594;;;-1:-1:-1;;;;;7948:18:78;;;7944:277;;-1:-1:-1;;;;;8034:48:78;;7979:16;8034:48;;;-1:-1:-1;;;;;;;;;;;8034:48:78;;;;;7979:16;;8017:134;;8094:9;8115:26;8134:6;8115:18;:26::i;8017:134::-;-1:-1:-1;;;;;7978:173:78;;;-1:-1:-1;;;;;7978:173:78;;;8187:4;-1:-1:-1;;;;;8166:46:78;;8193:8;8203;8166:46;;;;;;19972:25:400;;;20028:2;20013:18;;20006:34;19960:2;19945:18;;19798:248;8166:46:78;;;;;;;;7968:253;;7944:277;-1:-1:-1;;;;;8232:16:78;;;8228:266;;-1:-1:-1;;;;;8316:46:78;;8261:16;8316:46;;;-1:-1:-1;;;;;;;;;;;8316:46:78;;;;;8261:16;;8299:127;;8374:4;8390:26;8409:6;8390:18;:26::i;8299:127::-;-1:-1:-1;;;;;8260:166:78;;;-1:-1:-1;;;;;8260:166:78;;;8462:2;-1:-1:-1;;;;;8441:44:78;;8466:8;8476;8441:44;;;;;;19972:25:400;;;20028:2;20013:18;;20006:34;19960:2;19945:18;;19798:248;8441:44:78;;;;;;;;8250:244;;7806:698;;;:::o;14291:213:348:-;14347:6;14377:16;14369:24;;14365:103;;;14416:41;;-1:-1:-1;;;14416:41:348;;14447:2;14416:41;;;19313:36:400;19365:18;;;19358:34;;;19286:18;;14416:41:348;19132:266:400;9624:196:73;9715:24;;9686:7;;9752:8;;:63;;9767:41;9781:4;9800:7;9806:1;9800:3;:7;:::i;9767:41::-;:48;-1:-1:-1;;;9767:48:73;;-1:-1:-1;;;;;9767:48:73;9752:63;;;9763:1;9745:70;9624:196;-1:-1:-1;;;9624:196:73:o;4260:178:143:-;4345:7;4367:66;4400:20;:18;:20::i;:::-;4422:10;3555:4:344;3549:11;-1:-1:-1;;;3573:23:344;;3625:4;3616:14;;3609:39;;;;3677:4;3668:14;;3661:34;3733:4;3718:20;;;3353:401;6803:260:342;6888:7;6908:17;6927:18;6947:16;6967:25;6978:4;6984:1;6987;6990;6967:10;:25::i;:::-;6907:85;;;;;;7002:28;7014:5;7021:8;7002:11;:28::i;:::-;-1:-1:-1;7047:9:342;;6803:260;-1:-1:-1;;;;;;6803:260:342:o;1161:202:142:-;-1:-1:-1;;;;;1008:37:142;;1240:15;1008:37;;;1554:66;1008:37;;;;;:39;;;;;;;;1284:16;;;1280:79;;1317:35;;-1:-1:-1;;;1317:35:142;;-1:-1:-1;;;;;20514:32:400;;1317:35:142;;;20496:51:400;20563:18;;;20556:34;;;20469:18;;1317:35:142;20322:274:400;13340:838:399;13410:17;13445:18;13457:5;13445:11;:18::i;:::-;13685:2;13636:4;13627:14;;13672:16;;;13439:24;;-1:-1:-1;13551:24:399;;13690:13;13668:36;-1:-1:-1;;;13566:1:399;13796:168;13863:15;;;13856:23;;13845:9;;;13838:42;13909:1;13902:9;;;-1:-1:-1;;13931:9:399;13796:168;13928:22;13800:14;;;14039:4;14035:1;14029:8;14025:19;14018:4;14012:11;14008:37;14005:1;14001:45;13997:1;13991:8;13987:60;13984:1;13977:71;14073:4;14070:1;14066:12;14061:17;;14153:4;14149:1;14143:8;14139:19;14132:4;14126:11;14122:37;14119:1;14115:45;14111:1;14105:8;14101:60;14098:1;14091:71;;;13340:838;;;:::o;445:282:86:-;-1:-1:-1;;;;;;1114:62:86;;1089:4;1114:62;;;296:66:88;1114:62:86;;;;;;;;:70;;:62;:70;503:182;;-1:-1:-1;;;;;;549:62:86;;:49;:62;;;296:66:88;549:62:86;;;;;:69;;-1:-1:-1;;549:69:86;614:4;549:69;;;503:182;;;646:32;;-1:-1:-1;;;646:32:86;;;;;;;;;;;503:182;695:27;;-1:-1:-1;;;;;;695:27:86;;;;;;;;445:282;:::o;2553:247:125:-;2650:32;2685:23;:21;:23::i;:::-;2650:58;-1:-1:-1;2715:8:125;;;:15;2726:4;2715:8;:15;:::i;:::-;-1:-1:-1;2736:10:125;;;:19;2749:6;2736:10;:19;:::i;:::-;-1:-1:-1;3941:7:125;2761:34;;-1:-1:-1;;2553:247:125:o;2882:332:143:-;2985:28;:35;3016:4;2985:28;:35;:::i;:::-;-1:-1:-1;3026:31:143;:41;3060:7;3026:31;:41;:::i;:::-;-1:-1:-1;;3161:1:143;-1:-1:-1;;;;;;;;;;;3124:38:143;;;3168:37;:41;-1:-1:-1;2882:332:143:o;8767:90:78:-;8825:7;8847:5;8851:1;8847;:5;:::i;3151:218:348:-;3208:7;-1:-1:-1;;;;;3231:25:348;;3227:105;;;3279:42;;-1:-1:-1;;;3279:42:348;;3310:3;3279:42;;;19313:36:400;19365:18;;;19358:34;;;19286:18;;3279:42:348;19132:266:400;8508:255:78;8661:7;8670;8692:66;8703:27;8721:8;:6;:8::i;:::-;8703:27;;:17;:27::i;:::-;8732:25;8735:14;:5;:12;:14::i;:::-;8751:5;8732:2;:25;;:::i;:::-;8692:5;;:66;:10;:66::i;:::-;8685:73;;;;8508:255;;;;;;;:::o;8861:95::-;8924:7;8946:5;8950:1;8946;:5;:::i;6177:577:143:-;6227:7;6242:18;6263:13;:11;:13::i;:::-;6286:18;;6242:34;;-1:-1:-1;6286:22:143;6282:468;;6325:22;;;;;;;;6177:577;-1:-1:-1;6177:577:143:o;6282:468::-;-1:-1:-1;;;;;;;;;;;6600:34:143;6646:15;;6642:102;;6680:10;6177:577;-1:-1:-1;;6177:577:143:o;6642:102::-;6722:13;6715:20;;;;6177:577;:::o;6963:613::-;7016:7;7031:21;7055:16;:14;:16::i;:::-;7081:21;;7031:40;;-1:-1:-1;7081:25:143;7077:495;;7123:25;;;;;;;;6963:613;-1:-1:-1;6963:613:143:o;7077:495::-;7413:37;;7462:18;;7458:108;;7499:13;6963:613;-1:-1:-1;;6963:613:143:o;8587:1642:347:-;8635:7;8658:1;8663;8658:6;8654:45;;-1:-1:-1;8687:1:347;;8587:1642;-1:-1:-1;8587:1642:347:o;8654:45::-;9378:14;9412:1;9401:7;9406:1;9401:4;:7::i;:::-;:12;;9395:1;:19;;9378:36;;9873:1;9862:6;9858:1;:10;;;;;:::i;:::-;;9849:6;:19;9848:26;;9839:35;;9922:1;9911:6;9907:1;:10;;;;;:::i;:::-;;9898:6;:19;9897:26;;9888:35;;9971:1;9960:6;9956:1;:10;;;;;:::i;:::-;;9947:6;:19;9946:26;;9937:35;;10020:1;10009:6;10005:1;:10;;;;;:::i;:::-;;9996:6;:19;9995:26;;9986:35;;10069:1;10058:6;10054:1;:10;;;;;:::i;:::-;;10045:6;:19;10044:26;;10035:35;;10118:1;10107:6;10103:1;:10;;;;;:::i;:::-;;10094:6;:19;10093:26;;10084:35;;10167:1;10156:6;10152:1;:10;;;;;:::i;:::-;;10143:6;:19;10142:26;;10133:35;;10189:23;10193:6;10205;10201:1;:10;;;;;:::i;:::-;;10189:3;:23::i;11772:361:73:-;11911:7;11926:186;11939:4;11933:3;:10;11926:186;;;11953:11;11967:23;11980:3;11985:4;11967:12;:23::i;:::-;13062:28;13115:20;;;13174:4;13161:18;;11953:37;;-1:-1:-1;12002:35:73;;;;13157:28;;12002:29;;;:35;11998:108;;;12056:3;12049:10;;11998:108;;;12090:7;:3;12096:1;12090:7;:::i;:::-;12084:13;;11998:108;11945:167;11926:186;;;-1:-1:-1;12124:4:73;11772:361;-1:-1:-1;;;11772:361:73:o;5140:1530:342:-;5266:7;;;6199:66;6186:79;;6182:164;;;-1:-1:-1;6297:1:342;;-1:-1:-1;6301:30:342;;-1:-1:-1;6333:1:342;6281:54;;6182:164;6457:24;;;6440:14;6457:24;;;;;;;;;21609:25:400;;;21682:4;21670:17;;21650:18;;;21643:45;;;;21704:18;;;21697:34;;;21747:18;;;21740:34;;;6457:24:342;;21581:19:400;;6457:24:342;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6457:24:342;;-1:-1:-1;;6457:24:342;;;-1:-1:-1;;;;;;;6495:20:342;;6491:113;;-1:-1:-1;6547:1:342;;-1:-1:-1;6551:29:342;;-1:-1:-1;6547:1:342;;-1:-1:-1;6531:62:342;;6491:113;6622:6;-1:-1:-1;6630:20:342;;-1:-1:-1;6630:20:342;;-1:-1:-1;5140:1530:342;;;;;;;;;:::o;7196:532::-;7291:20;7282:5;:29;;;;;;;;:::i;:::-;;7278:444;;7196:532;;:::o;7278:444::-;7387:29;7378:5;:38;;;;;;;;:::i;:::-;;7374:348;;7439:23;;-1:-1:-1;;;7439:23:342;;;;;;;;;;;7374:348;7492:35;7483:5;:44;;;;;;;;:::i;:::-;;7479:243;;7550:46;;-1:-1:-1;;;7550:46:342;;;;;1746:25:400;;;1719:18;;7550:46:342;1600:177:400;7479:243:342;7626:30;7617:5;:39;;;;;;;;:::i;:::-;;7613:109;;7679:32;;-1:-1:-1;;;7679:32:342;;;;;1746:25:400;;;1719:18;;7679:32:342;1600:177:400;14338:436:399;14397:17;14432:26;14452:5;14432:19;:26::i;:::-;14555:10;;14617:6;14605:19;;14567:1;14551:18;-1:-1:-1;;14670:11:399;;;14715:22;;;14670:11;14338:436;-1:-1:-1;;14338:436:399:o;7623:172:73:-;7721:7;;7752:38;7760:4;7779:3;7784:5;7752:7;:38::i;10699:983:347:-;10751:7;;10835:3;10826:12;;;:16;10822:99;;10872:3;10862:13;;;;10893;10822:99;10947:2;10938:11;;;:15;10934:96;;10983:2;10973:12;;;;11003;10934:96;11056:2;11047:11;;;:15;11043:96;;11092:2;11082:12;;;;11112;11043:96;11165:2;11156:11;;;:15;11152:96;;11201:2;11191:12;;;;11221;11152:96;11274:1;11265:10;;;:14;11261:93;;11309:1;11299:11;;;;11328;11261:93;11380:1;11371:10;;;:14;11367:93;;11415:1;11405:11;;;;11434;11367:93;11486:1;11477:10;;;:14;11473:93;;11521:1;11511:11;;;;11540;11473:93;11592:1;11583:10;;;:14;11579:64;;11627:1;11617:11;11669:6;10699:983;-1:-1:-1;;10699:983:347:o;2557:104::-;2615:7;2645:1;2641;:5;:13;;2653:1;2641:13;;;-1:-1:-1;2649:1:347;;2557:104;-1:-1:-1;2557:104:347:o;2774:153::-;2836:7;2909:11;2919:1;2910:5;;;2909:11;:::i;:::-;2899:21;;2900:5;;;2899:21;:::i;14911:1330:399:-;14978:17;15086:4;15080:11;15073:18;;15412:4;15407:3;15403:14;15397:4;15390:28;15444:34;15438:4;15431:48;15549:1;15544:3;15540:11;15533:18;;15576:2;15571:3;15564:15;15631:4;15626:3;15622:14;15668:1;15663:2;15660:1;15656:10;15649:21;15738:5;15734:2;15730:14;15721:23;;15940:1;15925:300;15990:1;15987;15983:9;15980:1;15976:17;16030:5;16027:1;16022:14;16088:2;16082:4;16078:13;16072:20;16068:1;16065;16061:9;16053:40;16134:4;16131:1;16127:12;16121:19;16118:1;16110:31;-1:-1:-1;;16170:1:399;16163:9;;;-1:-1:-1;;16192:9:399;15925:300;16189:22;15929:14;;14911:1330;;;:::o;10688:752:73:-;10833:11;;10795:7;;;;10855;;10851:585;;10918:25;10946:28;10960:4;10966:7;10972:1;10966:3;:7;:::i;10946:28::-;10918:56;;;;;;;;;;;;;;;;;;-1:-1:-1;;;10918:56:73;;;-1:-1:-1;;;;;10918:56:73;;;;;;;-1:-1:-1;11040:16:73;;;-1:-1:-1;11040:16:73;11032:56;;;;-1:-1:-1;;;11032:56:73;;22341:2:400;11032:56:73;;;22323:21:400;22380:2;22360:18;;;22353:30;22419:29;22399:18;;;22392:57;22466:18;;11032:56:73;22139:351:400;11032:56:73;11140:9;;:16;;;;;;;11136:161;;11206:5;11168:28;11182:4;11188:7;11194:1;11188:3;:7;:::i;11168:28::-;:43;;-1:-1:-1;;;;;11168:43:73;;;;-1:-1:-1;;;11168:43:73;;;;;;;;;;;11136:161;;;11246:41;;;;;;;;;;;;;;;-1:-1:-1;;;;;11246:41:73;;;;;;;;;;11236:52;;;;;;;-1:-1:-1;11236:52:73;;;;;;;;;;;;;;-1:-1:-1;;;11236:52:73;;;;;;;;;;11136:161;11312:11;;;;-1:-1:-1;11325:5:73;;-1:-1:-1;11304:27:73;;-1:-1:-1;11304:27:73;10851:585;-1:-1:-1;;11362:41:73;;;;;;;;;;;;;;;-1:-1:-1;;;;;11362:41:73;;;;;;;;;;11352:52;;;;;;;-1:-1:-1;11352:52:73;;;;;;;;;;;;;-1:-1:-1;;;11352:52:73;;;;;;;;;;;;-1:-1:-1;;11396:5:73;11412:17;;14:250:400;99:1;109:113;123:6;120:1;117:13;109:113;;;199:11;;;193:18;180:11;;;173:39;145:2;138:10;109:113;;;-1:-1:-1;;256:1:400;238:16;;231:27;14:250::o;269:271::-;311:3;349:5;343:12;376:6;371:3;364:19;392:76;461:6;454:4;449:3;445:14;438:4;431:5;427:16;392:76;:::i;:::-;522:2;501:15;-1:-1:-1;;497:29:400;488:39;;;;529:4;484:50;;269:271;-1:-1:-1;;269:271:400:o;545:220::-;694:2;683:9;676:21;657:4;714:45;755:2;744:9;740:18;732:6;714:45;:::i;770:180::-;829:6;882:2;870:9;861:7;857:23;853:32;850:52;;;898:1;895;888:12;850:52;-1:-1:-1;921:23:400;;770:180;-1:-1:-1;770:180:400:o;1163:173::-;1231:20;;-1:-1:-1;;;;;1280:31:400;;1270:42;;1260:70;;1326:1;1323;1316:12;1260:70;1163:173;;;:::o;1341:254::-;1409:6;1417;1470:2;1458:9;1449:7;1445:23;1441:32;1438:52;;;1486:1;1483;1476:12;1438:52;1509:29;1528:9;1509:29;:::i;:::-;1499:39;1585:2;1570:18;;;;1557:32;;-1:-1:-1;;;1341:254:400:o;1782:328::-;1859:6;1867;1875;1928:2;1916:9;1907:7;1903:23;1899:32;1896:52;;;1944:1;1941;1934:12;1896:52;1967:29;1986:9;1967:29;:::i;:::-;1957:39;;2015:38;2049:2;2038:9;2034:18;2015:38;:::i;:::-;2005:48;;2100:2;2089:9;2085:18;2072:32;2062:42;;1782:328;;;;;:::o;2297:127::-;2358:10;2353:3;2349:20;2346:1;2339:31;2389:4;2386:1;2379:15;2413:4;2410:1;2403:15;2429:632;2494:5;2524:18;2565:2;2557:6;2554:14;2551:40;;;2571:18;;:::i;:::-;2646:2;2640:9;2614:2;2700:15;;-1:-1:-1;;2696:24:400;;;2722:2;2692:33;2688:42;2676:55;;;2746:18;;;2766:22;;;2743:46;2740:72;;;2792:18;;:::i;:::-;2832:10;2828:2;2821:22;2861:6;2852:15;;2891:6;2883;2876:22;2931:3;2922:6;2917:3;2913:16;2910:25;2907:45;;;2948:1;2945;2938:12;2907:45;2998:6;2993:3;2986:4;2978:6;2974:17;2961:44;3053:1;3046:4;3037:6;3029;3025:19;3021:30;3014:41;;;;2429:632;;;;;:::o;3066:222::-;3109:5;3162:3;3155:4;3147:6;3143:17;3139:27;3129:55;;3180:1;3177;3170:12;3129:55;3202:80;3278:3;3269:6;3256:20;3249:4;3241:6;3237:17;3202:80;:::i;3293:1019::-;3428:6;3436;3444;3452;3460;3513:3;3501:9;3492:7;3488:23;3484:33;3481:53;;;3530:1;3527;3520:12;3481:53;3570:9;3557:23;3599:18;3640:2;3632:6;3629:14;3626:34;;;3656:1;3653;3646:12;3626:34;3679:50;3721:7;3712:6;3701:9;3697:22;3679:50;:::i;:::-;3669:60;;3782:2;3771:9;3767:18;3754:32;3738:48;;3811:2;3801:8;3798:16;3795:36;;;3827:1;3824;3817:12;3795:36;3850:52;3894:7;3883:8;3872:9;3868:24;3850:52;:::i;:::-;3840:62;;3921:38;3955:2;3944:9;3940:18;3921:38;:::i;:::-;3911:48;;4012:2;4001:9;3997:18;3984:32;3968:48;;4041:2;4031:8;4028:16;4025:36;;;4057:1;4054;4047:12;4025:36;4080:52;4124:7;4113:8;4102:9;4098:24;4080:52;:::i;:::-;4070:62;;4185:3;4174:9;4170:19;4157:33;4141:49;;4215:2;4205:8;4202:16;4199:36;;;4231:1;4228;4221:12;4199:36;;4254:52;4298:7;4287:8;4276:9;4272:24;4254:52;:::i;:::-;4244:62;;;3293:1019;;;;;;;;:::o;4317:322::-;4386:6;4439:2;4427:9;4418:7;4414:23;4410:32;4407:52;;;4455:1;4452;4445:12;4407:52;4495:9;4482:23;4528:18;4520:6;4517:30;4514:50;;;4560:1;4557;4550:12;4514:50;4583;4625:7;4616:6;4605:9;4601:22;4583:50;:::i;4644:186::-;4703:6;4756:2;4744:9;4735:7;4731:23;4727:32;4724:52;;;4772:1;4769;4762:12;4724:52;4795:29;4814:9;4795:29;:::i;4835:1043::-;5012:2;5001:9;4994:21;4975:4;5050:6;5044:13;5093:4;5088:2;5077:9;5073:18;5066:32;5121:52;5168:3;5157:9;5153:19;5139:12;5121:52;:::i;:::-;5107:66;;5222:2;5214:6;5210:15;5204:22;5249:2;5245:7;5316:2;5304:9;5296:6;5292:22;5288:31;5283:2;5272:9;5268:18;5261:59;5343:41;5377:6;5361:14;5343:41;:::i;:::-;5329:55;;5438:2;5430:6;5426:15;5420:22;5415:2;5404:9;5400:18;5393:50;5498:2;5490:6;5486:15;5480:22;5474:3;5463:9;5459:19;5452:51;5552:3;5544:6;5540:16;5534:23;5512:45;;5622:2;5610:9;5602:6;5598:22;5594:31;5588:3;5577:9;5573:19;5566:60;5649:41;5683:6;5667:14;5649:41;:::i;:::-;5635:55;;5739:3;5731:6;5727:16;5721:23;5699:45;;5810:2;5798:9;5790:6;5786:22;5782:31;5775:4;5764:9;5760:20;5753:61;;5831:41;5865:6;5849:14;5831:41;:::i;:::-;5823:49;4835:1043;-1:-1:-1;;;;;4835:1043:400:o;5883:1019::-;6018:6;6026;6034;6042;6050;6103:3;6091:9;6082:7;6078:23;6074:33;6071:53;;;6120:1;6117;6110:12;6071:53;6143:29;6162:9;6143:29;:::i;:::-;6133:39;;6223:2;6212:9;6208:18;6195:32;6246:18;6287:2;6279:6;6276:14;6273:34;;;6303:1;6300;6293:12;6273:34;6326:50;6368:7;6359:6;6348:9;6344:22;6326:50;:::i;:::-;6316:60;;6429:2;6418:9;6414:18;6401:32;6385:48;;6458:2;6448:8;6445:16;6442:36;;;6474:1;6471;6464:12;6442:36;6497:52;6541:7;6530:8;6519:9;6515:24;6497:52;:::i;6907:1259::-;7313:3;7308;7304:13;7296:6;7292:26;7281:9;7274:45;7255:4;7338:2;7376:3;7371:2;7360:9;7356:18;7349:31;7403:46;7444:3;7433:9;7429:19;7421:6;7403:46;:::i;:::-;7497:9;7489:6;7485:22;7480:2;7469:9;7465:18;7458:50;7531:33;7557:6;7549;7531:33;:::i;:::-;7595:2;7580:18;;7573:34;;;-1:-1:-1;;;;;7644:32:400;;7638:3;7623:19;;7616:61;7664:3;7693:19;;7686:35;;;7758:22;;;7752:3;7737:19;;7730:51;7830:13;;7852:22;;;7902:2;7928:15;;;;-1:-1:-1;7890:15:400;;;;-1:-1:-1;7971:169:400;7985:6;7982:1;7979:13;7971:169;;;8046:13;;8034:26;;8115:15;;;;8080:12;;;;8007:1;8000:9;7971:169;;;-1:-1:-1;8157:3:400;;6907:1259;-1:-1:-1;;;;;;;;;;;;6907:1259:400:o;8372:347::-;8437:6;8445;8498:2;8486:9;8477:7;8473:23;8469:32;8466:52;;;8514:1;8511;8504:12;8466:52;8537:29;8556:9;8537:29;:::i;:::-;8527:39;;8616:2;8605:9;8601:18;8588:32;8663:5;8656:13;8649:21;8642:5;8639:32;8629:60;;8685:1;8682;8675:12;8629:60;8708:5;8698:15;;;8372:347;;;;;:::o;8724:667::-;8819:6;8827;8835;8843;8896:3;8884:9;8875:7;8871:23;8867:33;8864:53;;;8913:1;8910;8903:12;8864:53;8936:29;8955:9;8936:29;:::i;:::-;8926:39;;8984:38;9018:2;9007:9;9003:18;8984:38;:::i;:::-;8974:48;;9069:2;9058:9;9054:18;9041:32;9031:42;;9124:2;9113:9;9109:18;9096:32;9151:18;9143:6;9140:30;9137:50;;;9183:1;9180;9173:12;9137:50;9206:22;;9259:4;9251:13;;9247:27;-1:-1:-1;9237:55:400;;9288:1;9285;9278:12;9237:55;9311:74;9377:7;9372:2;9359:16;9354:2;9350;9346:11;9311:74;:::i;:::-;9301:84;;;8724:667;;;;;;;:::o;9396:618::-;9498:6;9506;9514;9522;9530;9538;9591:3;9579:9;9570:7;9566:23;9562:33;9559:53;;;9608:1;9605;9598:12;9559:53;9631:29;9650:9;9631:29;:::i;:::-;9621:39;;9707:2;9696:9;9692:18;9679:32;9669:42;;9758:2;9747:9;9743:18;9730:32;9720:42;;9812:2;9801:9;9797:18;9784:32;9856:4;9849:5;9845:16;9838:5;9835:27;9825:55;;9876:1;9873;9866:12;9825:55;9396:618;;;;-1:-1:-1;9396:618:400;;9951:3;9936:19;;9923:33;;10003:3;9988:19;;;9975:33;;-1:-1:-1;9396:618:400;-1:-1:-1;;9396:618:400:o;10019:543::-;10107:6;10115;10168:2;10156:9;10147:7;10143:23;10139:32;10136:52;;;10184:1;10181;10174:12;10136:52;10224:9;10211:23;10253:18;10294:2;10286:6;10283:14;10280:34;;;10310:1;10307;10300:12;10280:34;10333:50;10375:7;10366:6;10355:9;10351:22;10333:50;:::i;:::-;10323:60;;10436:2;10425:9;10421:18;10408:32;10392:48;;10465:2;10455:8;10452:16;10449:36;;;10481:1;10478;10471:12;10449:36;;10504:52;10548:7;10537:8;10526:9;10522:24;10504:52;:::i;:::-;10494:62;;;10019:543;;;;;:::o;10567:743::-;10674:6;10682;10690;10743:2;10731:9;10722:7;10718:23;10714:32;10711:52;;;10759:1;10756;10749:12;10711:52;10799:9;10786:23;10828:18;10869:2;10861:6;10858:14;10855:34;;;10885:1;10882;10875:12;10855:34;10908:50;10950:7;10941:6;10930:9;10926:22;10908:50;:::i;:::-;10898:60;;11011:2;11000:9;10996:18;10983:32;10967:48;;11040:2;11030:8;11027:16;11024:36;;;11056:1;11053;11046:12;11024:36;11079:52;11123:7;11112:8;11101:9;11097:24;11079:52;:::i;:::-;11069:62;;11184:2;11173:9;11169:18;11156:32;11140:48;;11213:2;11203:8;11200:16;11197:36;;;11229:1;11226;11219:12;11197:36;;11252:52;11296:7;11285:8;11274:9;11270:24;11252:52;:::i;:::-;11242:62;;;10567:743;;;;;:::o;11315:260::-;11383:6;11391;11444:2;11432:9;11423:7;11419:23;11415:32;11412:52;;;11460:1;11457;11450:12;11412:52;11483:29;11502:9;11483:29;:::i;:::-;11473:39;;11531:38;11565:2;11554:9;11550:18;11531:38;:::i;:::-;11521:48;;11315:260;;;;;:::o;11772:380::-;11851:1;11847:12;;;;11894;;;11915:61;;11969:4;11961:6;11957:17;11947:27;;11915:61;12022:2;12014:6;12011:14;11991:18;11988:38;11985:161;;12068:10;12063:3;12059:20;12056:1;12049:31;12103:4;12100:1;12093:15;12131:4;12128:1;12121:15;13385:543;13487:2;13482:3;13479:11;13476:446;;;13523:1;13547:5;13544:1;13537:16;13591:4;13588:1;13578:18;13661:2;13649:10;13645:19;13642:1;13638:27;13632:4;13628:38;13697:4;13685:10;13682:20;13679:47;;;-1:-1:-1;13720:4:400;13679:47;13775:2;13770:3;13766:12;13763:1;13759:20;13753:4;13749:31;13739:41;;13830:82;13848:2;13841:5;13838:13;13830:82;;;13893:17;;;13874:1;13863:13;13830:82;;14104:1345;14230:3;14224:10;14257:18;14249:6;14246:30;14243:56;;;14279:18;;:::i;:::-;14308:97;14398:6;14358:38;14390:4;14384:11;14358:38;:::i;:::-;14352:4;14308:97;:::i;:::-;14460:4;;14517:2;14506:14;;14534:1;14529:663;;;;15236:1;15253:6;15250:89;;;-1:-1:-1;15305:19:400;;;15299:26;15250:89;-1:-1:-1;;14061:1:400;14057:11;;;14053:24;14049:29;14039:40;14085:1;14081:11;;;14036:57;15352:81;;14499:944;;14529:663;13332:1;13325:14;;;13369:4;13356:18;;-1:-1:-1;;14565:20:400;;;14683:236;14697:7;14694:1;14691:14;14683:236;;;14786:19;;;14780:26;14765:42;;14878:27;;;;14846:1;14834:14;;;;14713:19;;14683:236;;;14687:3;14947:6;14938:7;14935:19;14932:201;;;15008:19;;;15002:26;-1:-1:-1;;15091:1:400;15087:14;;;15103:3;15083:24;15079:37;15075:42;15060:58;15045:74;;14932:201;-1:-1:-1;;;;;15179:1:400;15163:14;;;15159:22;15146:36;;-1:-1:-1;14104:1345:400:o;15807:489::-;-1:-1:-1;;;;;16076:15:400;;;16058:34;;16128:15;;16123:2;16108:18;;16101:43;16175:2;16160:18;;16153:34;;;16223:3;16218:2;16203:18;;16196:31;;;16001:4;;16244:46;;16270:19;;16262:6;16244:46;:::i;:::-;16236:54;15807:489;-1:-1:-1;;;;;;15807:489:400:o;16301:290::-;16370:6;16423:2;16411:9;16402:7;16398:23;16394:32;16391:52;;;16439:1;16436;16429:12;16391:52;16465:16;;-1:-1:-1;;;;;;16510:32:400;;16500:43;;16490:71;;16557:1;16554;16547:12;17371:127;17432:10;17427:3;17423:20;17420:1;17413:31;17463:4;17460:1;17453:15;17487:4;17484:1;17477:15;17503:629;17772:3;17810:6;17804:13;17826:66;17885:6;17880:3;17873:4;17865:6;17861:17;17826:66;:::i;:::-;-1:-1:-1;;;17914:16:400;;;17939:18;;;17982:13;;18004:78;17982:13;18069:1;18058:13;;18051:4;18039:17;;18004:78;:::i;:::-;18102:20;18124:1;18098:28;;17503:629;-1:-1:-1;;;;17503:629:400:o;18137:496::-;18316:3;18354:6;18348:13;18370:66;18429:6;18424:3;18417:4;18409:6;18405:17;18370:66;:::i;:::-;18499:13;;18458:16;;;;18521:70;18499:13;18458:16;18568:4;18556:17;;18521:70;:::i;:::-;18607:20;;18137:496;-1:-1:-1;;;;18137:496:400:o;19403:127::-;19464:10;19459:3;19455:20;19452:1;19445:31;19495:4;19492:1;19485:15;19519:4;19516:1;19509:15;19535:128;19602:9;;;19623:11;;;19620:37;;;19637:18;;:::i;19668:125::-;19733:9;;;19754:10;;;19751:36;;;19767:18;;:::i;20601:182::-;-1:-1:-1;;;;;20708:10:400;;;20720;;;20704:27;;20743:11;;;20740:37;;;20757:18;;:::i;:::-;20740:37;20601:182;;;;:::o;21060:185::-;-1:-1:-1;;;;;21181:10:400;;;21169;;;21165:27;;21204:12;;;21201:38;;;21219:18;;:::i;21250:127::-;21311:10;21306:3;21302:20;21299:1;21292:31;21342:4;21339:1;21332:15;21366:4;21363:1;21356:15;21785:127;21846:10;21841:3;21837:20;21834:1;21827:31;21877:4;21874:1;21867:15;21901:4;21898:1;21891:15;21917:217;21957:1;21983;21973:132;;22027:10;22022:3;22018:20;22015:1;22008:31;22062:4;22059:1;22052:15;22090:4;22087:1;22080:15;21973:132;-1:-1:-1;22119:9:400;;21917:217::o","linkReferences":{}},"methodIdentifiers":{"CLOCK_MODE()":"4bf5d7e9","DOMAIN_SEPARATOR()":"3644e515","__ERC721A_init(string,string)":"d2f01f19","__SpaceOwner_init(string,string,string)":"d7a901d3","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","clock()":"91ddadf4","delegate(address)":"5c19a95c","delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)":"c3cda520","delegates(address)":"587cde1e","eip712Domain()":"84b0196e","getApproved(uint256)":"081812fc","getDefaultUri()":"d6536540","getFactory()":"88cc58e4","getPastTotalSupply(uint256)":"8e539e8c","getPastVotes(address,uint256)":"3a46b1a8","getSpaceInfo(address)":"6a9a38e6","getVotes(address)":"9ab24eb0","isApprovedForAll(address,address)":"e985e9c5","mintSpace(string,string,address,string,string)":"3bf5b8f4","name()":"06fdde03","nextTokenId()":"75794a3c","nonces(address)":"7ecebe00","ownerOf(uint256)":"6352211e","safeTransferFrom(address,address,uint256)":"42842e0e","safeTransferFrom(address,address,uint256,bytes)":"b88d4fde","setApprovalForAll(address,bool)":"a22cb465","setDefaultUri(string)":"466a18de","setFactory(address)":"5bb47808","symbol()":"95d89b41","tokenURI(uint256)":"c87b56dd","totalSupply()":"18160ddd","transferFrom(address,address,uint256)":"23b872dd","updateSpaceInfo(address,string,string,string,string)":"84880614"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AlreadyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AlreadyEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ApprovalCallerNotOwnerNorApproved\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ApprovalQueryForNonexistentToken\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BalanceQueryForZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ECDSAInvalidSignature\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"ECDSAInvalidSignatureLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"ECDSAInvalidSignatureS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"GuardianEnabled\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"version\",\"type\":\"uint32\"}],\"name\":\"Initializable_AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Initializable_InInitializingState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Initializable_NotInInitializingState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Introspection_AlreadySupported\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Introspection_NotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"currentNonce\",\"type\":\"uint256\"}],\"name\":\"InvalidAccountNonce\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MintERC2309QuantityExceedsLimit\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MintToZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MintZeroQuantity\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotExternalAccount\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Ownable__NotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Ownable__ZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OwnerQueryForNonexistentToken\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OwnershipNotInitializedForExtraData\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"bits\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"SafeCastOverflowedUintDowncast\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SpaceOwner__DefaultUriNotSet\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SpaceOwner__OnlyFactoryAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SpaceOwner__OnlySpaceOwnerAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SpaceOwner__SpaceNotFound\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TransferCallerNotOwnerNorApproved\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TransferFromIncorrectOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TransferToNonERC721ReceiverImplementer\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TransferToZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"URIQueryForNonexistentToken\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Validator__InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Validator__InvalidStringLength\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"fromTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"toTokenId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"ConsecutiveTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"fromDelegate\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"toDelegate\",\"type\":\"address\"}],\"name\":\"DelegateChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegate\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"previousBalance\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newBalance\",\"type\":\"uint256\"}],\"name\":\"DelegateVotesChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EIP712DomainChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bool\",\"name\":\"enabled\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"cooldown\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"GuardianUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"version\",\"type\":\"uint32\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"InterfaceAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"InterfaceRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"uri\",\"type\":\"string\"}],\"name\":\"SpaceOwner__SetDefaultUri\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"factory\",\"type\":\"address\"}],\"name\":\"SpaceOwner__SetFactory\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"space\",\"type\":\"address\"}],\"name\":\"SpaceOwner__UpdateSpace\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"CLOCK_MODE\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"result\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name_\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol_\",\"type\":\"string\"}],\"name\":\"__ERC721A_init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"version\",\"type\":\"string\"}],\"name\":\"__SpaceOwner_init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"clock\",\"outputs\":[{\"internalType\":\"uint48\",\"name\":\"\",\"type\":\"uint48\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"delegate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expiry\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"delegateBySig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"delegates\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"eip712Domain\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"fields\",\"type\":\"bytes1\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"version\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"verifyingContract\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"extensions\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDefaultUri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"timepoint\",\"type\":\"uint256\"}],\"name\":\"getPastTotalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timepoint\",\"type\":\"uint256\"}],\"name\":\"getPastVotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"space\",\"type\":\"address\"}],\"name\":\"getSpaceInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"uri\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"createdAt\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"shortDescription\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"longDescription\",\"type\":\"string\"}],\"internalType\":\"struct ISpaceOwnerBase.Space\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"getVotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"uri\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"space\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"shortDescription\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"longDescription\",\"type\":\"string\"}],\"name\":\"mintSpace\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"uri\",\"type\":\"string\"}],\"name\":\"setDefaultUri\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"factory\",\"type\":\"address\"}],\"name\":\"setFactory\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"space\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"uri\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"shortDescription\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"longDescription\",\"type\":\"string\"}],\"name\":\"updateSpaceInfo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"ECDSAInvalidSignature()\":[{\"details\":\"The signature derives the `address(0)`.\"}],\"ECDSAInvalidSignatureLength(uint256)\":[{\"details\":\"The signature has an invalid length.\"}],\"ECDSAInvalidSignatureS(bytes32)\":[{\"details\":\"The signature has an S value that is in the upper half order.\"}],\"InvalidAccountNonce(address,uint256)\":[{\"details\":\"The nonce used for an `account` is not the expected current nonce.\"}],\"SafeCastOverflowedUintDowncast(uint8,uint256)\":[{\"details\":\"Value doesn't fit in an uint of `bits` size.\"}]},\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\"},\"ConsecutiveTransfer(uint256,uint256,address,address)\":{\"details\":\"Emitted when tokens in `fromTokenId` to `toTokenId` (inclusive) is transferred from `from` to `to`, as defined in the [ERC2309](https://eips.ethereum.org/EIPS/eip-2309) standard. See {_mintERC2309} for more details.\"},\"DelegateChanged(address,address,address)\":{\"details\":\"Emitted when an account changes their delegate.\"},\"DelegateVotesChanged(address,uint256,uint256)\":{\"details\":\"Emitted when a token transfer or delegate change results in changes to a delegate's number of votes.\"},\"EIP712DomainChanged()\":{\"details\":\"MAY be emitted to signal that the domain could have changed.\"},\"OwnershipTransferred(address,address)\":{\"details\":\"This emits when ownership of a contract changes.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `tokenId` token is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"CLOCK_MODE()\":{\"details\":\"Description of the clock\"},\"approve(address,uint256)\":{\"details\":\"Gives permission to `to` to transfer `tokenId` token to another account. See {ERC721A-_approve}. Requirements: - The caller must own the token or be an approved operator.\"},\"balanceOf(address)\":{\"details\":\"Returns the number of tokens in `owner`'s account.\"},\"clock()\":{\"details\":\"Clock used for flagging checkpoints. Can be overridden to implement timestamp based checkpoints (and voting).\"},\"delegate(address)\":{\"details\":\"Delegates votes from the sender to `delegatee`.\"},\"delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)\":{\"details\":\"Delegates votes from signer to `delegatee`.\"},\"delegates(address)\":{\"details\":\"Returns the delegate that `account` has chosen.\"},\"eip712Domain()\":{\"details\":\"See {EIP-5267}. _Available since v4.9._\"},\"getApproved(uint256)\":{\"details\":\"Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist.\"},\"getPastTotalSupply(uint256)\":{\"details\":\"Returns the total supply of votes available at a specific moment in the past. If the `clock()` is configured to use block numbers, this will return the value at the end of the corresponding block. NOTE: This value is the sum of all available votes, which is not necessarily the sum of all delegated votes. Votes that have not been delegated are still part of total supply, even though they would not participate in a vote.\"},\"getPastVotes(address,uint256)\":{\"details\":\"Returns the amount of votes that `account` had at a specific moment in the past. If the `clock()` is configured to use block numbers, this will return the value at the end of the corresponding block.\"},\"getSpaceInfo(address)\":{\"params\":{\"space\":\"The address of the space\"},\"returns\":{\"_0\":\"space The space info\"}},\"getVotes(address)\":{\"details\":\"Returns the current amount of votes that `account` has.\"},\"isApprovedForAll(address,address)\":{\"details\":\"Returns if the `operator` is allowed to manage all of the assets of `owner`. See {setApprovalForAll}.\"},\"mintSpace(string,string,address,string,string)\":{\"details\":\"Only the factory is allowed to mint spaces\",\"params\":{\"longDescription\":\"The long description of the space\",\"name\":\"The name of the space\",\"shortDescription\":\"The short description of the space\",\"space\":\"The address of the space\",\"uri\":\"The URI of the space\"},\"returns\":{\"tokenId\":\"The token id of the minted space\"}},\"name()\":{\"details\":\"Returns the token collection name.\"},\"ownerOf(uint256)\":{\"details\":\"Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Equivalent to `safeTransferFrom(from, to, tokenId, '')`.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the caller. Emits an {ApprovalForAll} event.\"},\"symbol()\":{\"details\":\"Returns the token collection symbol.\"},\"tokenURI(uint256)\":{\"details\":\"Returns the Uniform Resource Identifier (URI) for `tokenId` token.\"},\"totalSupply()\":{\"details\":\"Returns the total number of tokens in existence. Burned tokens will reduce the count. To get the total number of tokens minted, please see {_totalMinted}.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfers `tokenId` from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event.\"},\"updateSpaceInfo(address,string,string,string,string)\":{\"details\":\"Only the space owner is allowed to update the space info\",\"params\":{\"longDescription\":\"The long description of the space\",\"name\":\"The name of the space\",\"shortDescription\":\"The short description of the space\",\"space\":\"The address of the space\",\"uri\":\"The URI of the space\"}}},\"version\":1},\"userdoc\":{\"errors\":{\"ApprovalCallerNotOwnerNorApproved()\":[{\"notice\":\"The caller must own the token or be an approved operator.\"}],\"ApprovalQueryForNonexistentToken()\":[{\"notice\":\"The token does not exist.\"}],\"BalanceQueryForZeroAddress()\":[{\"notice\":\"Cannot query the balance for the zero address.\"}],\"MintERC2309QuantityExceedsLimit()\":[{\"notice\":\"The `quantity` minted with ERC2309 exceeds the safety limit.\"}],\"MintToZeroAddress()\":[{\"notice\":\"Cannot mint to the zero address.\"}],\"MintZeroQuantity()\":[{\"notice\":\"The quantity of tokens minted must be more than zero.\"}],\"OwnerQueryForNonexistentToken()\":[{\"notice\":\"The token does not exist.\"}],\"OwnershipNotInitializedForExtraData()\":[{\"notice\":\"The `extraData` cannot be set on an unintialized ownership slot.\"}],\"TransferCallerNotOwnerNorApproved()\":[{\"notice\":\"The caller must own the token or be an approved operator.\"}],\"TransferFromIncorrectOwner()\":[{\"notice\":\"The token must be owned by `from`.\"}],\"TransferToNonERC721ReceiverImplementer()\":[{\"notice\":\"Cannot safely transfer to a contract that does not implement the ERC721Receiver interface.\"}],\"TransferToZeroAddress()\":[{\"notice\":\"Cannot transfer to the zero address.\"}],\"URIQueryForNonexistentToken()\":[{\"notice\":\"The token does not exist.\"}]},\"events\":{\"InterfaceAdded(bytes4)\":{\"notice\":\"Emitted when an interface is added to the contract via `_addInterface`.\"},\"InterfaceRemoved(bytes4)\":{\"notice\":\"Emitted when an interface is removed from the contract via `_removeInterface`.\"}},\"kind\":\"user\",\"methods\":{\"getDefaultUri()\":{\"notice\":\"Get the default URI\"},\"getFactory()\":{\"notice\":\"Get the factory address\"},\"getSpaceInfo(address)\":{\"notice\":\"Get the space info\"},\"mintSpace(string,string,address,string,string)\":{\"notice\":\"Mint a space\"},\"nextTokenId()\":{\"notice\":\"Get the next token id that will be used to mint a space\"},\"setDefaultUri(string)\":{\"notice\":\"Set the default URI\"},\"setFactory(address)\":{\"notice\":\"Set the factory address that is allowed to mint spaces\"},\"updateSpaceInfo(address,string,string,string,string)\":{\"notice\":\"Update the space info\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/src/spaces/facets/owner/SpaceOwner.sol\":\"SpaceOwner\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"appendCBOR\":false,\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin/=lib/@openzeppelin/\",\":@prb/math/=lib/@prb/math/src/\",\":@prb/test/=lib/@prb/test/src/\",\":account-abstraction/=lib/account-abstraction/contracts/\",\":base64/=lib/base64/\",\":ds-test/=lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\",\":hardhat-deploy/=lib/hardhat-deploy/\",\":solady/=lib/solady/src/\"]},\"sources\":{\"contracts/src/diamond/facets/Facet.sol\":{\"keccak256\":\"0x931702541a5e4a2756665e53baf1b04aa0418d5a9c635e519058905e21ae0c57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b785043acac69be2d2545bc4492b2c08b6e931a53737f8508baf3f98c8743863\",\"dweb:/ipfs/QmeLzqURWDmXHJftmMXRsywdJw96CNDB9DQmgTpG1woYvc\"]},\"contracts/src/diamond/facets/governance/votes/Checkpoints.sol\":{\"keccak256\":\"0x4b98db2e67e47ec59caa78fade51e9ec6fa33ee2592e46fed09d9167ebe76c8a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72ec6949ee33fb9c137bba362b94af699762fadd66334128d1dd0dbcd4301bc6\",\"dweb:/ipfs/QmQybe6k5K3gss4zzCPqoba6ZBZE5p8KJRoQ2RzkE91JRV\"]},\"contracts/src/diamond/facets/governance/votes/IERC5805.sol\":{\"keccak256\":\"0x8b3b84026610f99bcac6139359305a46c537edf377e44771b904c2bd35719ee3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://49a8e7af9b47b6bbd794ccb50380b8f9e9b84561d62bcbf16843dde55bab86e6\",\"dweb:/ipfs/QmdBdYxvhwCwtqW9DfPa6Bw5PrYdzhuKQyJv4vcLsttqrV\"]},\"contracts/src/diamond/facets/governance/votes/IERC6372.sol\":{\"keccak256\":\"0xc3fa5c25bdd3db6126e04897496889e68a65749b050ae8fede0ff80e322aca86\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bcf56ae1474c9a3032f8b15b1bbbeeb50ac21c574047f846673d4aca9bf82db4\",\"dweb:/ipfs/Qmcce1zD6TBWiMLXMDsFF6bUrwtVtharjwvAbtkMmoYRgd\"]},\"contracts/src/diamond/facets/governance/votes/IVotes.sol\":{\"keccak256\":\"0xef9a51a12d9c5a331de719be078e39858739a3d5043ebc20814d1331d8a7d8c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8a077058f77857cd2668fc97943dd64fdfd2463b8a0e163ef9973da8bb1f593a\",\"dweb:/ipfs/QmXZavPSRakx4GHD9gDpDBWQDt1SL2hYvbARA62zVeUq2w\"]},\"contracts/src/diamond/facets/governance/votes/Votes.sol\":{\"keccak256\":\"0x583ee53b96d9ead23925281c765624a48e7a385942247c4da1ecc1052193ed67\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c5c8cc50c062867c32ad9e3d0b4ad847f22576809d9f704aa8ee72b7ab617462\",\"dweb:/ipfs/QmSayHRuL6dwMfYNBNe29Sp63oeNDoemZttLWCv1urWCZc\"]},\"contracts/src/diamond/facets/governance/votes/VotesBase.sol\":{\"keccak256\":\"0x41049b5967fcceaf40dab9bb2863a701ba5aa68fa219321773028498c61e6add\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e63ecb4168e2b2f4819e606bf2b66195b48e42bd5d22a3def701dac016160112\",\"dweb:/ipfs/QmVJxvxjkTE9cH44DRXCwGntEyPRgsVDBiw2AiCT1KNDBC\"]},\"contracts/src/diamond/facets/governance/votes/VotesStorage.sol\":{\"keccak256\":\"0x87a2f9c85f63fcfa8ce2dc14d5a9a6118b33fd7000fb988b300519dec9b89629\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://daef1e04a36eb664ec08d4627a2038f3decbeac93b13a2c651b52681ef6f5f5e\",\"dweb:/ipfs/QmbV5SXhZnUW52HLEbhNhKeRXDCyPR6zAJRa98Vh3m9ptF\"]},\"contracts/src/diamond/facets/initializable/Initializable.sol\":{\"keccak256\":\"0xe02e99665b5acb22d5c508c3bda97c35acd2597ce0a58569a19cc12f0010da90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b586a51dbe63e8763ae0b2b3dadd5c8559f47bc8cbaa0e9fe52aaec4c3677552\",\"dweb:/ipfs/QmRtaVikg6YDwzUAtY7WV793taZgT1ZxyMB4PLAEqGBeCC\"]},\"contracts/src/diamond/facets/initializable/InitializableStorage.sol\":{\"keccak256\":\"0xf8170e6977d685c218f65185478fbb9916e64f63aab1dcd195056438466f458a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://83ea3cf77f012eef93d10593e3beded36b449611063fd8dfbdb44e4346f87eb4\",\"dweb:/ipfs/QmVasL7QnxXEmiUsLJzpfig8717zLUhZfyQxiBbFGDEVVg\"]},\"contracts/src/diamond/facets/introspection/IERC165.sol\":{\"keccak256\":\"0x486758ee326820b0dd468c6a7a90fda8d67d48d3114792c587cee0e8417b366b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b695090abcec8c2d487d73961265030fa4f64ecd84f6d80b85c6c7d4d9142ea0\",\"dweb:/ipfs/QmQTKuV2WEoy6vTCRxL39zEqubLUf9NhoC2BGB19CiYqRq\"]},\"contracts/src/diamond/facets/introspection/IntrospectionBase.sol\":{\"keccak256\":\"0x93ac0d2f738615e69dbcfd5fa6ac5840ec48329ac92094605638bcf2abd6708f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fbcb2cd0e47b6ef39bec6cbdeedf6e292e8849d4e25f4bb6c72ee574446b02f1\",\"dweb:/ipfs/QmcDwxFALaQBLbsGsjdttkQkE48PdKWq43XY7f34MxqZSw\"]},\"contracts/src/diamond/facets/introspection/IntrospectionStorage.sol\":{\"keccak256\":\"0x306f41ef86bc5050a28c1dbf855d3f6f623be4aebc0a0f96474dae85979f7763\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dbad6f8e6685690ae75f6c9066972a45400b45307245feab8990af18a4c38e91\",\"dweb:/ipfs/QmcTUqiSL1z2nwokpNNsXQkjVTaFdFJiM2exguZpPDDXEM\"]},\"contracts/src/diamond/facets/ownable/IERC173.sol\":{\"keccak256\":\"0x677cebaa56ee33950d04ba5baef02188da026beb7cf669bdf580410cb1f1c303\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d5be56219a4ab8d9709db7ffb74c73ee1be268b8f77308ef7a72d8f2820fb30b\",\"dweb:/ipfs/QmeTuAZMwRf3uRHMtHEd7M7LvGyRAEmoCikF4Pb6dCAKXd\"]},\"contracts/src/diamond/facets/ownable/OwnableBase.sol\":{\"keccak256\":\"0x272abaecc104d5f23d77a623cf1548620d24b0f447eb2a12144e27561ff489f2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcb8c20ff7346bdc5dba82e6680cc0ea64087460a12153e3b6c3416f6addf875\",\"dweb:/ipfs/QmfEEufJBzudSDekQteQkb3CzmnzUPT3GDhNgVpHNC9xaf\"]},\"contracts/src/diamond/facets/ownable/OwnableStorage.sol\":{\"keccak256\":\"0xda650482ce08c04110366cb01408aaabd01383d9c504b7cacfb2674aae688dcd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://694f42ffb353fccaa1eadf91dee3a3cee7253e3f357bcba2b175fd7be701e27e\",\"dweb:/ipfs/QmPxxVerATSYrNLp7snnSvNVsbLPm1wzHULhBbtR333eik\"]},\"contracts/src/diamond/facets/token/ERC721A/ERC721A.sol\":{\"keccak256\":\"0x5662ab29272ecaabdaf5792c368a71693fcad9df24566f9e470ff1ec3510fd8f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2ef719ff8dce040daf5bcfe328f3463261fb3acfe5c41c589365143916748cc3\",\"dweb:/ipfs/QmUm4PHj4y2237H7hnCwnfRyTWbp1DHWpc8GN26M6T4ToC\"]},\"contracts/src/diamond/facets/token/ERC721A/ERC721ABase.sol\":{\"keccak256\":\"0x27b65225578e0cd90b90ab4ce91c4dfe621b43a58df227d3fdb0494c8f317d62\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://70db26d8735dd6b7e7a847712603f793728521ebd05ad8640d6068b395dce3ba\",\"dweb:/ipfs/QmYeC1EM3XQWgHjQKpT41TksDFcCzr4Sz8JPRdagFms7mE\"]},\"contracts/src/diamond/facets/token/ERC721A/ERC721AStorage.sol\":{\"keccak256\":\"0x1f85619c07524883b96fd2f3ca92ea3e2343466c0832cc03f6eb1cbb828896f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://06adf57b874d40a123eb3e7bf89cd7f49d29a93c142b26336263529ccd692e04\",\"dweb:/ipfs/QmQAhsfGRBPuBcSE1mqocTvutK9c4NfJPsbN4XQXtbsLey\"]},\"contracts/src/diamond/facets/token/ERC721A/IERC721A.sol\":{\"keccak256\":\"0xb57dee608d37c98c32ac38fa3c84e77f5962cf39a0697815ad209edf55593782\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://092750f101ae80c5bace9fd53ae87547a0aac6109cd58290609acd2ef489ce9d\",\"dweb:/ipfs/QmREM18vUEQmcmnTSyR4XxHB9Ykqomc9RuCFZcWNiovgbz\"]},\"contracts/src/diamond/utils/Context.sol\":{\"keccak256\":\"0x4566c941f553d989324d4308c037fe0669062c746d6e5108ce533fcc8ffbcaac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87908ef7e56c826210414cb25a50a3073188e96e6ac2afc2b56d0bba6abb48a7\",\"dweb:/ipfs/QmT41NMs4REQxxeuR48JUcB39UTgcaKdUvizc2XawUF5aq\"]},\"contracts/src/diamond/utils/Nonces.sol\":{\"keccak256\":\"0xba683e7b1dc9bc812c0c33ce7efb8e7505a881ee475b8ef2230af11377418732\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://69408950cf9d4fb74bbf79e475d338363ca4f7a492de5827b3f93a02da443732\",\"dweb:/ipfs/QmT6nt6Dpp2stTjCDEzepf6unVE7bcetXdshPnwmJFfXaf\"]},\"contracts/src/diamond/utils/cryptography/EIP712.sol\":{\"keccak256\":\"0xa4854e007ca8e80368e578576d65d47cb4022a7c031bc7abb4d94df5498935eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed66cebd356963dd8bc33459fea266da15cb87bd4f586399dba84b525e0fcd6a\",\"dweb:/ipfs/QmXqgEnTnEusLhXXuycj73PZK1pRrw6ES4BQvEKfvKa2FR\"]},\"contracts/src/diamond/utils/cryptography/IERC5267.sol\":{\"keccak256\":\"0x29135f4d4e9e50c65240a1837a077ba44470aadd8c9bad0f5bb1cb32d50018e7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91eb5c894de0b09144d3b1c689f72fb26d638eb2eaa3217396ed86d41610214f\",\"dweb:/ipfs/Qmexr1dtSeFD8sbrbk3U8pp1WUL5Caq3VoeeHy6bwmxMbD\"]},\"contracts/src/spaces/facets/guardian/GuardianBase.sol\":{\"keccak256\":\"0xe76248dbf516fb6a32934062fac4f2b3e19f83ba1a4df04d55b55c15be0265d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a2059a7b6b82f2de1654ff8bca374e32fa000e613ffb706197edd09565cb7a70\",\"dweb:/ipfs/QmUFTcFy64pFTwEwtGFrkoL84eZi7zVjAp46k1sWpAfUn5\"]},\"contracts/src/spaces/facets/guardian/GuardianStorage.sol\":{\"keccak256\":\"0xb6d7ae2fe80c40120223e660bf5888612f8e93c0e7dc70d6d2532d3e366f0674\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff77c0e4ad11ae6967a46d67c38422e06e45eb4e06aa7d99d611b8e4672aae5f\",\"dweb:/ipfs/QmfZui9wfZimGa4Q93zudgdit6ZUSgTET2WCKYWB7QkpVD\"]},\"contracts/src/spaces/facets/guardian/IGuardian.sol\":{\"keccak256\":\"0x7490883034a06f610a169e87f2bd15f5c904c87ea1eda80da63d17045b77b5bd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://44ea9689c8d31f5c31ebb470ac85f2d6be30d7698dbe4730454e19c5f72898f7\",\"dweb:/ipfs/QmUsWEQ4qFif8GghZGT8b7K52WrTbSgfjZPpPGxFzhz2kr\"]},\"contracts/src/spaces/facets/owner/ISpaceOwner.sol\":{\"keccak256\":\"0x7baa36238144aae1068d9df8b28c6741cbcf1f26e53c0e429fc62c351623c1f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4d702b63539e714f343482f80de3f342d7870647cbeb01b42abab7dc9805683a\",\"dweb:/ipfs/QmcTDjumaJfXvAoyT6G38meixc7omy6MUuX33FrRuc8hNw\"]},\"contracts/src/spaces/facets/owner/SpaceOwner.sol\":{\"keccak256\":\"0xb70a369ccc910d3d4397e48be446fb32e308ad951ed337edbd8300f5a1dd87c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5267c28f5aebfea915e5acce5f83b1f03588772094104f1817f676865ecef8a0\",\"dweb:/ipfs/QmRQSjcgnspgPVwkJnQ6f4uL4oAc29eKBujVaeAcmy9Lt2\"]},\"contracts/src/spaces/facets/owner/SpaceOwnerBase.sol\":{\"keccak256\":\"0xa1cb5b0bc9aec89791654a4725f7c42798245a432f3f3a741e4999fd12020f77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720a72562f1f8c129b3b276a4fb67cf403bc628db1534fed04e45a79b7773cb1\",\"dweb:/ipfs/QmNu34EsvFQjbaE8MwdxkAn4iXGDUY4wYq2GVBwUEu1uRh\"]},\"contracts/src/spaces/facets/owner/SpaceOwnerStorage.sol\":{\"keccak256\":\"0x150e03077204bb3bc21aae37b86f1b0513c55d07ab21cc22885f1376a1411317\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://12c4b4d27e0a93ea2a85646a754ffe5b6c02029efeadceafa0bf7a745e08dd1e\",\"dweb:/ipfs/QmWHR5yFEEaPo9SdtRWj13KeJS5uSRhjYdtZRKHx6CQqaN\"]},\"contracts/src/spaces/facets/owner/SpaceOwnerUriBase.sol\":{\"keccak256\":\"0x33836143f0920869898e15cf3c757d749a374689bab39f49931965169ea96c18\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://105995675fa7ed7a6032743e85166fa4d35efb2e214fdd5277b403b440507fdf\",\"dweb:/ipfs/QmQnJpp7Juz35RPAYWBiMUPh7CnTEUDwoHA2x7vx5vkcPL\"]},\"contracts/src/utils/Validator.sol\":{\"keccak256\":\"0x4f469950ab5fb75049aec2b55f9f78ade4bbc3a35e072acaadb2fbe9eab6fb5f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5689fa29f227bdedd2f085799b197a3c807e08a6520b7bcc953bd4f0c286c306\",\"dweb:/ipfs/QmeVULCHP8i43FGhkMs6Y8zxJDiN59f3Pw3bRPc3QdcLCt\"]},\"lib/@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0xaf28a975a78550e45f65e559a3ad6a5ad43b9b8a37366999abd1b7084eb70721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7bd24e224f67f65bfadf85dc2929fa965456bb2415478bd0125471b5ce35245\",\"dweb:/ipfs/QmRaydGr8BTHs1kvaZfsNU69pKzUAGFrvABn1KiRSbE51y\"]},\"lib/@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x55f102ea785d8399c0e58d1108e2d289506dde18abc6db1b7f68c1f9f9bc5792\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e52e0a7765c943ef14e5bcf11e46e6139fa044be564881378349236bf2e3453\",\"dweb:/ipfs/QmZEeeXoFPW47amyP35gfzomF9DixqqTEPwzBakv6cZw6i\"]},\"lib/@openzeppelin/contracts/utils/cryptography/ECDSA.sol\":{\"keccak256\":\"0xeed0a08b0b091f528356cbc7245891a4c748682d4f6a18055e8e6ca77d12a6cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ba80ba06c8e6be852847e4c5f4492cef801feb6558ae09ed705ff2e04ea8b13c\",\"dweb:/ipfs/QmXRJDv3xHLVQCVXg1ZvR35QS9sij5y9NDWYzMfUfAdTHF\"]},\"lib/@openzeppelin/contracts/utils/cryptography/MessageHashUtils.sol\":{\"keccak256\":\"0xba333517a3add42cd35fe877656fc3dfcc9de53baa4f3aabbd6d12a92e4ea435\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2ceacff44c0fdc81e48e0e0b1db87a2076d3c1fb497341de077bf1da9f6b406c\",\"dweb:/ipfs/QmRUo1muMRAewxrKQ7TkXUtknyRoR57AyEkoPpiuZQ8FzX\"]},\"lib/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"]},\"lib/@openzeppelin/contracts/utils/math/Math.sol\":{\"keccak256\":\"0x005ec64c6313f0555d59e278f9a7a5ab2db5bdc72a027f255a37c327af1ec02d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ece9f0b9c8daca08c76b6b5405a6446b6f73b3a15fab7ff56e296cbd4a2c875\",\"dweb:/ipfs/QmQyRpyPRL5SQuAgj6SHmbir3foX65FJjbVTTQrA2EFg6L\"]},\"lib/@openzeppelin/contracts/utils/math/SafeCast.sol\":{\"keccak256\":\"0xe19a4d5f31d2861e7344e8e535e2feafb913d806d3e2b5fe7782741a2a7094fe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4aed79c0fa6f0546ed02f2f683e8f77f0fd2ed7eb34d8bbf3d373c9a6d95b13c\",\"dweb:/ipfs/QmWqVz6UAVqmnWU5pqYPt1o6iDEZyPaBraAA3rKfTTSfYj\"]},\"lib/@openzeppelin/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0x5f7e4076e175393767754387c962926577f1660dd9b810187b9002407656be72\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7d533a1c97cd43a57cd9c465f7ee8dd0e39ae93a8fb8ff8e5303a356b081cdcc\",\"dweb:/ipfs/QmVBEei6aTnvYNZp2CHYVNKyZS4q1KkjANfY39WVXZXVoT\"]},\"lib/base64/base64.sol\":{\"keccak256\":\"0xa73959e6ef0b693e4423a562e612370160b934a75e618361ddd8c9c4b8ddbaaf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://17c12e16d8d66f3af15d8787920bd41ca6c1e7517a212a6b9cebd4b6d38f36fe\",\"dweb:/ipfs/QmcXMnZUXEz6LRKsm3CSvqdPboAzmezavi8bTg2dRxM2yE\"]},\"lib/solady/src/utils/LibString.sol\":{\"keccak256\":\"0xbb90caa572b7f65689b74867ec211fed8cde92714314101f4287d00a40d95ab2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://93d2fa323793f3a2044a58789ea73c82595bb181a449b507637d8a537f9d8a16\",\"dweb:/ipfs/Qmf4eAuQZTjARJMq2e2fXktpM2MSBow1JuMUPJbisEgZke\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AlreadyDisabled"},{"inputs":[],"type":"error","name":"AlreadyEnabled"},{"inputs":[],"type":"error","name":"ApprovalCallerNotOwnerNorApproved"},{"inputs":[],"type":"error","name":"ApprovalQueryForNonexistentToken"},{"inputs":[],"type":"error","name":"BalanceQueryForZeroAddress"},{"inputs":[],"type":"error","name":"ECDSAInvalidSignature"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"ECDSAInvalidSignatureLength"},{"inputs":[{"internalType":"bytes32","name":"s","type":"bytes32"}],"type":"error","name":"ECDSAInvalidSignatureS"},{"inputs":[],"type":"error","name":"GuardianEnabled"},{"inputs":[{"internalType":"uint32","name":"version","type":"uint32"}],"type":"error","name":"Initializable_AlreadyInitialized"},{"inputs":[],"type":"error","name":"Initializable_InInitializingState"},{"inputs":[],"type":"error","name":"Initializable_NotInInitializingState"},{"inputs":[],"type":"error","name":"Introspection_AlreadySupported"},{"inputs":[],"type":"error","name":"Introspection_NotSupported"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"currentNonce","type":"uint256"}],"type":"error","name":"InvalidAccountNonce"},{"inputs":[],"type":"error","name":"MintERC2309QuantityExceedsLimit"},{"inputs":[],"type":"error","name":"MintToZeroAddress"},{"inputs":[],"type":"error","name":"MintZeroQuantity"},{"inputs":[],"type":"error","name":"NotExternalAccount"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"Ownable__NotOwner"},{"inputs":[],"type":"error","name":"Ownable__ZeroAddress"},{"inputs":[],"type":"error","name":"OwnerQueryForNonexistentToken"},{"inputs":[],"type":"error","name":"OwnershipNotInitializedForExtraData"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"type":"error","name":"SafeCastOverflowedUintDowncast"},{"inputs":[],"type":"error","name":"SpaceOwner__DefaultUriNotSet"},{"inputs":[],"type":"error","name":"SpaceOwner__OnlyFactoryAllowed"},{"inputs":[],"type":"error","name":"SpaceOwner__OnlySpaceOwnerAllowed"},{"inputs":[],"type":"error","name":"SpaceOwner__SpaceNotFound"},{"inputs":[],"type":"error","name":"TransferCallerNotOwnerNorApproved"},{"inputs":[],"type":"error","name":"TransferFromIncorrectOwner"},{"inputs":[],"type":"error","name":"TransferToNonERC721ReceiverImplementer"},{"inputs":[],"type":"error","name":"TransferToZeroAddress"},{"inputs":[],"type":"error","name":"URIQueryForNonexistentToken"},{"inputs":[],"type":"error","name":"Validator__InvalidAddress"},{"inputs":[],"type":"error","name":"Validator__InvalidStringLength"},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"approved","type":"address","indexed":true},{"internalType":"uint256","name":"tokenId","type":"uint256","indexed":true}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"operator","type":"address","indexed":true},{"internalType":"bool","name":"approved","type":"bool","indexed":false}],"type":"event","name":"ApprovalForAll","anonymous":false},{"inputs":[{"internalType":"uint256","name":"fromTokenId","type":"uint256","indexed":true},{"internalType":"uint256","name":"toTokenId","type":"uint256","indexed":false},{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true}],"type":"event","name":"ConsecutiveTransfer","anonymous":false},{"inputs":[{"internalType":"address","name":"delegator","type":"address","indexed":true},{"internalType":"address","name":"fromDelegate","type":"address","indexed":true},{"internalType":"address","name":"toDelegate","type":"address","indexed":true}],"type":"event","name":"DelegateChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"delegate","type":"address","indexed":true},{"internalType":"uint256","name":"previousBalance","type":"uint256","indexed":false},{"internalType":"uint256","name":"newBalance","type":"uint256","indexed":false}],"type":"event","name":"DelegateVotesChanged","anonymous":false},{"inputs":[],"type":"event","name":"EIP712DomainChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"caller","type":"address","indexed":true},{"internalType":"bool","name":"enabled","type":"bool","indexed":true},{"internalType":"uint256","name":"cooldown","type":"uint256","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"GuardianUpdated","anonymous":false},{"inputs":[{"internalType":"uint32","name":"version","type":"uint32","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4","indexed":true}],"type":"event","name":"InterfaceAdded","anonymous":false},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4","indexed":true}],"type":"event","name":"InterfaceRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"string","name":"uri","type":"string","indexed":false}],"type":"event","name":"SpaceOwner__SetDefaultUri","anonymous":false},{"inputs":[{"internalType":"address","name":"factory","type":"address","indexed":false}],"type":"event","name":"SpaceOwner__SetFactory","anonymous":false},{"inputs":[{"internalType":"address","name":"space","type":"address","indexed":true}],"type":"event","name":"SpaceOwner__UpdateSpace","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"tokenId","type":"uint256","indexed":true}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"CLOCK_MODE","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"result","type":"bytes32"}]},{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"__ERC721A_init"},{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"string","name":"version","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"__SpaceOwner_init"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"payable","type":"function","name":"approve"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"clock","outputs":[{"internalType":"uint48","name":"","type":"uint48"}]},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"delegate"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"expiry","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"delegateBySig"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"delegates","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"eip712Domain","outputs":[{"internalType":"bytes1","name":"fields","type":"bytes1"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"verifyingContract","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256[]","name":"extensions","type":"uint256[]"}]},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getDefaultUri","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"timepoint","type":"uint256"}],"stateMutability":"view","type":"function","name":"getPastTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"timepoint","type":"uint256"}],"stateMutability":"view","type":"function","name":"getPastVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"space","type":"address"}],"stateMutability":"view","type":"function","name":"getSpaceInfo","outputs":[{"internalType":"struct ISpaceOwnerBase.Space","name":"","type":"tuple","components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"uri","type":"string"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"uint256","name":"createdAt","type":"uint256"},{"internalType":"string","name":"shortDescription","type":"string"},{"internalType":"string","name":"longDescription","type":"string"}]}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"getVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"stateMutability":"view","type":"function","name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"uri","type":"string"},{"internalType":"address","name":"space","type":"address"},{"internalType":"string","name":"shortDescription","type":"string"},{"internalType":"string","name":"longDescription","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"mintSpace","outputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"name","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"nextTokenId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"nonces","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"payable","type":"function","name":"safeTransferFrom"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"safeTransferFrom"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setApprovalForAll"},{"inputs":[{"internalType":"string","name":"uri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"setDefaultUri"},{"inputs":[{"internalType":"address","name":"factory","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setFactory"},{"inputs":[],"stateMutability":"view","type":"function","name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"payable","type":"function","name":"transferFrom"},{"inputs":[{"internalType":"address","name":"space","type":"address"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"uri","type":"string"},{"internalType":"string","name":"shortDescription","type":"string"},{"internalType":"string","name":"longDescription","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"updateSpaceInfo"}],"devdoc":{"kind":"dev","methods":{"CLOCK_MODE()":{"details":"Description of the clock"},"approve(address,uint256)":{"details":"Gives permission to `to` to transfer `tokenId` token to another account. See {ERC721A-_approve}. Requirements: - The caller must own the token or be an approved operator."},"balanceOf(address)":{"details":"Returns the number of tokens in `owner`'s account."},"clock()":{"details":"Clock used for flagging checkpoints. Can be overridden to implement timestamp based checkpoints (and voting)."},"delegate(address)":{"details":"Delegates votes from the sender to `delegatee`."},"delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)":{"details":"Delegates votes from signer to `delegatee`."},"delegates(address)":{"details":"Returns the delegate that `account` has chosen."},"eip712Domain()":{"details":"See {EIP-5267}. _Available since v4.9._"},"getApproved(uint256)":{"details":"Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist."},"getPastTotalSupply(uint256)":{"details":"Returns the total supply of votes available at a specific moment in the past. If the `clock()` is configured to use block numbers, this will return the value at the end of the corresponding block. NOTE: This value is the sum of all available votes, which is not necessarily the sum of all delegated votes. Votes that have not been delegated are still part of total supply, even though they would not participate in a vote."},"getPastVotes(address,uint256)":{"details":"Returns the amount of votes that `account` had at a specific moment in the past. If the `clock()` is configured to use block numbers, this will return the value at the end of the corresponding block."},"getSpaceInfo(address)":{"params":{"space":"The address of the space"},"returns":{"_0":"space The space info"}},"getVotes(address)":{"details":"Returns the current amount of votes that `account` has."},"isApprovedForAll(address,address)":{"details":"Returns if the `operator` is allowed to manage all of the assets of `owner`. See {setApprovalForAll}."},"mintSpace(string,string,address,string,string)":{"details":"Only the factory is allowed to mint spaces","params":{"longDescription":"The long description of the space","name":"The name of the space","shortDescription":"The short description of the space","space":"The address of the space","uri":"The URI of the space"},"returns":{"tokenId":"The token id of the minted space"}},"name()":{"details":"Returns the token collection name."},"ownerOf(uint256)":{"details":"Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist."},"safeTransferFrom(address,address,uint256)":{"details":"Equivalent to `safeTransferFrom(from, to, tokenId, '')`."},"safeTransferFrom(address,address,uint256,bytes)":{"details":"Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event."},"setApprovalForAll(address,bool)":{"details":"Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the caller. Emits an {ApprovalForAll} event."},"symbol()":{"details":"Returns the token collection symbol."},"tokenURI(uint256)":{"details":"Returns the Uniform Resource Identifier (URI) for `tokenId` token."},"totalSupply()":{"details":"Returns the total number of tokens in existence. Burned tokens will reduce the count. To get the total number of tokens minted, please see {_totalMinted}."},"transferFrom(address,address,uint256)":{"details":"Transfers `tokenId` from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event."},"updateSpaceInfo(address,string,string,string,string)":{"details":"Only the space owner is allowed to update the space info","params":{"longDescription":"The long description of the space","name":"The name of the space","shortDescription":"The short description of the space","space":"The address of the space","uri":"The URI of the space"}}},"version":1},"userdoc":{"kind":"user","methods":{"getDefaultUri()":{"notice":"Get the default URI"},"getFactory()":{"notice":"Get the factory address"},"getSpaceInfo(address)":{"notice":"Get the space info"},"mintSpace(string,string,address,string,string)":{"notice":"Mint a space"},"nextTokenId()":{"notice":"Get the next token id that will be used to mint a space"},"setDefaultUri(string)":{"notice":"Set the default URI"},"setFactory(address)":{"notice":"Set the factory address that is allowed to mint spaces"},"updateSpaceInfo(address,string,string,string,string)":{"notice":"Update the space info"}},"version":1}},"settings":{"remappings":["@openzeppelin/=lib/@openzeppelin/","@prb/math/=lib/@prb/math/src/","@prb/test/=lib/@prb/test/src/","account-abstraction/=lib/account-abstraction/contracts/","base64/=lib/base64/","ds-test/=lib/ds-test/src/","forge-std/=lib/forge-std/src/","hardhat-deploy/=lib/hardhat-deploy/","solady/=lib/solady/src/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"none","appendCBOR":false},"compilationTarget":{"contracts/src/spaces/facets/owner/SpaceOwner.sol":"SpaceOwner"},"evmVersion":"paris","libraries":{}},"sources":{"contracts/src/diamond/facets/Facet.sol":{"keccak256":"0x931702541a5e4a2756665e53baf1b04aa0418d5a9c635e519058905e21ae0c57","urls":["bzz-raw://b785043acac69be2d2545bc4492b2c08b6e931a53737f8508baf3f98c8743863","dweb:/ipfs/QmeLzqURWDmXHJftmMXRsywdJw96CNDB9DQmgTpG1woYvc"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/Checkpoints.sol":{"keccak256":"0x4b98db2e67e47ec59caa78fade51e9ec6fa33ee2592e46fed09d9167ebe76c8a","urls":["bzz-raw://72ec6949ee33fb9c137bba362b94af699762fadd66334128d1dd0dbcd4301bc6","dweb:/ipfs/QmQybe6k5K3gss4zzCPqoba6ZBZE5p8KJRoQ2RzkE91JRV"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/IERC5805.sol":{"keccak256":"0x8b3b84026610f99bcac6139359305a46c537edf377e44771b904c2bd35719ee3","urls":["bzz-raw://49a8e7af9b47b6bbd794ccb50380b8f9e9b84561d62bcbf16843dde55bab86e6","dweb:/ipfs/QmdBdYxvhwCwtqW9DfPa6Bw5PrYdzhuKQyJv4vcLsttqrV"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/IERC6372.sol":{"keccak256":"0xc3fa5c25bdd3db6126e04897496889e68a65749b050ae8fede0ff80e322aca86","urls":["bzz-raw://bcf56ae1474c9a3032f8b15b1bbbeeb50ac21c574047f846673d4aca9bf82db4","dweb:/ipfs/Qmcce1zD6TBWiMLXMDsFF6bUrwtVtharjwvAbtkMmoYRgd"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/IVotes.sol":{"keccak256":"0xef9a51a12d9c5a331de719be078e39858739a3d5043ebc20814d1331d8a7d8c3","urls":["bzz-raw://8a077058f77857cd2668fc97943dd64fdfd2463b8a0e163ef9973da8bb1f593a","dweb:/ipfs/QmXZavPSRakx4GHD9gDpDBWQDt1SL2hYvbARA62zVeUq2w"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/Votes.sol":{"keccak256":"0x583ee53b96d9ead23925281c765624a48e7a385942247c4da1ecc1052193ed67","urls":["bzz-raw://c5c8cc50c062867c32ad9e3d0b4ad847f22576809d9f704aa8ee72b7ab617462","dweb:/ipfs/QmSayHRuL6dwMfYNBNe29Sp63oeNDoemZttLWCv1urWCZc"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/VotesBase.sol":{"keccak256":"0x41049b5967fcceaf40dab9bb2863a701ba5aa68fa219321773028498c61e6add","urls":["bzz-raw://e63ecb4168e2b2f4819e606bf2b66195b48e42bd5d22a3def701dac016160112","dweb:/ipfs/QmVJxvxjkTE9cH44DRXCwGntEyPRgsVDBiw2AiCT1KNDBC"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/VotesStorage.sol":{"keccak256":"0x87a2f9c85f63fcfa8ce2dc14d5a9a6118b33fd7000fb988b300519dec9b89629","urls":["bzz-raw://daef1e04a36eb664ec08d4627a2038f3decbeac93b13a2c651b52681ef6f5f5e","dweb:/ipfs/QmbV5SXhZnUW52HLEbhNhKeRXDCyPR6zAJRa98Vh3m9ptF"],"license":"MIT"},"contracts/src/diamond/facets/initializable/Initializable.sol":{"keccak256":"0xe02e99665b5acb22d5c508c3bda97c35acd2597ce0a58569a19cc12f0010da90","urls":["bzz-raw://b586a51dbe63e8763ae0b2b3dadd5c8559f47bc8cbaa0e9fe52aaec4c3677552","dweb:/ipfs/QmRtaVikg6YDwzUAtY7WV793taZgT1ZxyMB4PLAEqGBeCC"],"license":"MIT"},"contracts/src/diamond/facets/initializable/InitializableStorage.sol":{"keccak256":"0xf8170e6977d685c218f65185478fbb9916e64f63aab1dcd195056438466f458a","urls":["bzz-raw://83ea3cf77f012eef93d10593e3beded36b449611063fd8dfbdb44e4346f87eb4","dweb:/ipfs/QmVasL7QnxXEmiUsLJzpfig8717zLUhZfyQxiBbFGDEVVg"],"license":"MIT"},"contracts/src/diamond/facets/introspection/IERC165.sol":{"keccak256":"0x486758ee326820b0dd468c6a7a90fda8d67d48d3114792c587cee0e8417b366b","urls":["bzz-raw://b695090abcec8c2d487d73961265030fa4f64ecd84f6d80b85c6c7d4d9142ea0","dweb:/ipfs/QmQTKuV2WEoy6vTCRxL39zEqubLUf9NhoC2BGB19CiYqRq"],"license":"MIT"},"contracts/src/diamond/facets/introspection/IntrospectionBase.sol":{"keccak256":"0x93ac0d2f738615e69dbcfd5fa6ac5840ec48329ac92094605638bcf2abd6708f","urls":["bzz-raw://fbcb2cd0e47b6ef39bec6cbdeedf6e292e8849d4e25f4bb6c72ee574446b02f1","dweb:/ipfs/QmcDwxFALaQBLbsGsjdttkQkE48PdKWq43XY7f34MxqZSw"],"license":"MIT"},"contracts/src/diamond/facets/introspection/IntrospectionStorage.sol":{"keccak256":"0x306f41ef86bc5050a28c1dbf855d3f6f623be4aebc0a0f96474dae85979f7763","urls":["bzz-raw://dbad6f8e6685690ae75f6c9066972a45400b45307245feab8990af18a4c38e91","dweb:/ipfs/QmcTUqiSL1z2nwokpNNsXQkjVTaFdFJiM2exguZpPDDXEM"],"license":"MIT"},"contracts/src/diamond/facets/ownable/IERC173.sol":{"keccak256":"0x677cebaa56ee33950d04ba5baef02188da026beb7cf669bdf580410cb1f1c303","urls":["bzz-raw://d5be56219a4ab8d9709db7ffb74c73ee1be268b8f77308ef7a72d8f2820fb30b","dweb:/ipfs/QmeTuAZMwRf3uRHMtHEd7M7LvGyRAEmoCikF4Pb6dCAKXd"],"license":"MIT"},"contracts/src/diamond/facets/ownable/OwnableBase.sol":{"keccak256":"0x272abaecc104d5f23d77a623cf1548620d24b0f447eb2a12144e27561ff489f2","urls":["bzz-raw://fcb8c20ff7346bdc5dba82e6680cc0ea64087460a12153e3b6c3416f6addf875","dweb:/ipfs/QmfEEufJBzudSDekQteQkb3CzmnzUPT3GDhNgVpHNC9xaf"],"license":"MIT"},"contracts/src/diamond/facets/ownable/OwnableStorage.sol":{"keccak256":"0xda650482ce08c04110366cb01408aaabd01383d9c504b7cacfb2674aae688dcd","urls":["bzz-raw://694f42ffb353fccaa1eadf91dee3a3cee7253e3f357bcba2b175fd7be701e27e","dweb:/ipfs/QmPxxVerATSYrNLp7snnSvNVsbLPm1wzHULhBbtR333eik"],"license":"MIT"},"contracts/src/diamond/facets/token/ERC721A/ERC721A.sol":{"keccak256":"0x5662ab29272ecaabdaf5792c368a71693fcad9df24566f9e470ff1ec3510fd8f","urls":["bzz-raw://2ef719ff8dce040daf5bcfe328f3463261fb3acfe5c41c589365143916748cc3","dweb:/ipfs/QmUm4PHj4y2237H7hnCwnfRyTWbp1DHWpc8GN26M6T4ToC"],"license":"MIT"},"contracts/src/diamond/facets/token/ERC721A/ERC721ABase.sol":{"keccak256":"0x27b65225578e0cd90b90ab4ce91c4dfe621b43a58df227d3fdb0494c8f317d62","urls":["bzz-raw://70db26d8735dd6b7e7a847712603f793728521ebd05ad8640d6068b395dce3ba","dweb:/ipfs/QmYeC1EM3XQWgHjQKpT41TksDFcCzr4Sz8JPRdagFms7mE"],"license":"MIT"},"contracts/src/diamond/facets/token/ERC721A/ERC721AStorage.sol":{"keccak256":"0x1f85619c07524883b96fd2f3ca92ea3e2343466c0832cc03f6eb1cbb828896f4","urls":["bzz-raw://06adf57b874d40a123eb3e7bf89cd7f49d29a93c142b26336263529ccd692e04","dweb:/ipfs/QmQAhsfGRBPuBcSE1mqocTvutK9c4NfJPsbN4XQXtbsLey"],"license":"MIT"},"contracts/src/diamond/facets/token/ERC721A/IERC721A.sol":{"keccak256":"0xb57dee608d37c98c32ac38fa3c84e77f5962cf39a0697815ad209edf55593782","urls":["bzz-raw://092750f101ae80c5bace9fd53ae87547a0aac6109cd58290609acd2ef489ce9d","dweb:/ipfs/QmREM18vUEQmcmnTSyR4XxHB9Ykqomc9RuCFZcWNiovgbz"],"license":"MIT"},"contracts/src/diamond/utils/Context.sol":{"keccak256":"0x4566c941f553d989324d4308c037fe0669062c746d6e5108ce533fcc8ffbcaac","urls":["bzz-raw://87908ef7e56c826210414cb25a50a3073188e96e6ac2afc2b56d0bba6abb48a7","dweb:/ipfs/QmT41NMs4REQxxeuR48JUcB39UTgcaKdUvizc2XawUF5aq"],"license":"MIT"},"contracts/src/diamond/utils/Nonces.sol":{"keccak256":"0xba683e7b1dc9bc812c0c33ce7efb8e7505a881ee475b8ef2230af11377418732","urls":["bzz-raw://69408950cf9d4fb74bbf79e475d338363ca4f7a492de5827b3f93a02da443732","dweb:/ipfs/QmT6nt6Dpp2stTjCDEzepf6unVE7bcetXdshPnwmJFfXaf"],"license":"MIT"},"contracts/src/diamond/utils/cryptography/EIP712.sol":{"keccak256":"0xa4854e007ca8e80368e578576d65d47cb4022a7c031bc7abb4d94df5498935eb","urls":["bzz-raw://ed66cebd356963dd8bc33459fea266da15cb87bd4f586399dba84b525e0fcd6a","dweb:/ipfs/QmXqgEnTnEusLhXXuycj73PZK1pRrw6ES4BQvEKfvKa2FR"],"license":"MIT"},"contracts/src/diamond/utils/cryptography/IERC5267.sol":{"keccak256":"0x29135f4d4e9e50c65240a1837a077ba44470aadd8c9bad0f5bb1cb32d50018e7","urls":["bzz-raw://91eb5c894de0b09144d3b1c689f72fb26d638eb2eaa3217396ed86d41610214f","dweb:/ipfs/Qmexr1dtSeFD8sbrbk3U8pp1WUL5Caq3VoeeHy6bwmxMbD"],"license":"MIT"},"contracts/src/spaces/facets/guardian/GuardianBase.sol":{"keccak256":"0xe76248dbf516fb6a32934062fac4f2b3e19f83ba1a4df04d55b55c15be0265d0","urls":["bzz-raw://a2059a7b6b82f2de1654ff8bca374e32fa000e613ffb706197edd09565cb7a70","dweb:/ipfs/QmUFTcFy64pFTwEwtGFrkoL84eZi7zVjAp46k1sWpAfUn5"],"license":"MIT"},"contracts/src/spaces/facets/guardian/GuardianStorage.sol":{"keccak256":"0xb6d7ae2fe80c40120223e660bf5888612f8e93c0e7dc70d6d2532d3e366f0674","urls":["bzz-raw://ff77c0e4ad11ae6967a46d67c38422e06e45eb4e06aa7d99d611b8e4672aae5f","dweb:/ipfs/QmfZui9wfZimGa4Q93zudgdit6ZUSgTET2WCKYWB7QkpVD"],"license":"MIT"},"contracts/src/spaces/facets/guardian/IGuardian.sol":{"keccak256":"0x7490883034a06f610a169e87f2bd15f5c904c87ea1eda80da63d17045b77b5bd","urls":["bzz-raw://44ea9689c8d31f5c31ebb470ac85f2d6be30d7698dbe4730454e19c5f72898f7","dweb:/ipfs/QmUsWEQ4qFif8GghZGT8b7K52WrTbSgfjZPpPGxFzhz2kr"],"license":"MIT"},"contracts/src/spaces/facets/owner/ISpaceOwner.sol":{"keccak256":"0x7baa36238144aae1068d9df8b28c6741cbcf1f26e53c0e429fc62c351623c1f4","urls":["bzz-raw://4d702b63539e714f343482f80de3f342d7870647cbeb01b42abab7dc9805683a","dweb:/ipfs/QmcTDjumaJfXvAoyT6G38meixc7omy6MUuX33FrRuc8hNw"],"license":"MIT"},"contracts/src/spaces/facets/owner/SpaceOwner.sol":{"keccak256":"0xb70a369ccc910d3d4397e48be446fb32e308ad951ed337edbd8300f5a1dd87c3","urls":["bzz-raw://5267c28f5aebfea915e5acce5f83b1f03588772094104f1817f676865ecef8a0","dweb:/ipfs/QmRQSjcgnspgPVwkJnQ6f4uL4oAc29eKBujVaeAcmy9Lt2"],"license":"MIT"},"contracts/src/spaces/facets/owner/SpaceOwnerBase.sol":{"keccak256":"0xa1cb5b0bc9aec89791654a4725f7c42798245a432f3f3a741e4999fd12020f77","urls":["bzz-raw://720a72562f1f8c129b3b276a4fb67cf403bc628db1534fed04e45a79b7773cb1","dweb:/ipfs/QmNu34EsvFQjbaE8MwdxkAn4iXGDUY4wYq2GVBwUEu1uRh"],"license":"MIT"},"contracts/src/spaces/facets/owner/SpaceOwnerStorage.sol":{"keccak256":"0x150e03077204bb3bc21aae37b86f1b0513c55d07ab21cc22885f1376a1411317","urls":["bzz-raw://12c4b4d27e0a93ea2a85646a754ffe5b6c02029efeadceafa0bf7a745e08dd1e","dweb:/ipfs/QmWHR5yFEEaPo9SdtRWj13KeJS5uSRhjYdtZRKHx6CQqaN"],"license":"MIT"},"contracts/src/spaces/facets/owner/SpaceOwnerUriBase.sol":{"keccak256":"0x33836143f0920869898e15cf3c757d749a374689bab39f49931965169ea96c18","urls":["bzz-raw://105995675fa7ed7a6032743e85166fa4d35efb2e214fdd5277b403b440507fdf","dweb:/ipfs/QmQnJpp7Juz35RPAYWBiMUPh7CnTEUDwoHA2x7vx5vkcPL"],"license":"MIT"},"contracts/src/utils/Validator.sol":{"keccak256":"0x4f469950ab5fb75049aec2b55f9f78ade4bbc3a35e072acaadb2fbe9eab6fb5f","urls":["bzz-raw://5689fa29f227bdedd2f085799b197a3c807e08a6520b7bcc953bd4f0c286c306","dweb:/ipfs/QmeVULCHP8i43FGhkMs6Y8zxJDiN59f3Pw3bRPc3QdcLCt"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/Address.sol":{"keccak256":"0xaf28a975a78550e45f65e559a3ad6a5ad43b9b8a37366999abd1b7084eb70721","urls":["bzz-raw://b7bd24e224f67f65bfadf85dc2929fa965456bb2415478bd0125471b5ce35245","dweb:/ipfs/QmRaydGr8BTHs1kvaZfsNU69pKzUAGFrvABn1KiRSbE51y"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/Strings.sol":{"keccak256":"0x55f102ea785d8399c0e58d1108e2d289506dde18abc6db1b7f68c1f9f9bc5792","urls":["bzz-raw://6e52e0a7765c943ef14e5bcf11e46e6139fa044be564881378349236bf2e3453","dweb:/ipfs/QmZEeeXoFPW47amyP35gfzomF9DixqqTEPwzBakv6cZw6i"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/cryptography/ECDSA.sol":{"keccak256":"0xeed0a08b0b091f528356cbc7245891a4c748682d4f6a18055e8e6ca77d12a6cf","urls":["bzz-raw://ba80ba06c8e6be852847e4c5f4492cef801feb6558ae09ed705ff2e04ea8b13c","dweb:/ipfs/QmXRJDv3xHLVQCVXg1ZvR35QS9sij5y9NDWYzMfUfAdTHF"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/cryptography/MessageHashUtils.sol":{"keccak256":"0xba333517a3add42cd35fe877656fc3dfcc9de53baa4f3aabbd6d12a92e4ea435","urls":["bzz-raw://2ceacff44c0fdc81e48e0e0b1db87a2076d3c1fb497341de077bf1da9f6b406c","dweb:/ipfs/QmRUo1muMRAewxrKQ7TkXUtknyRoR57AyEkoPpiuZQ8FzX"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b","urls":["bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df","dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/math/Math.sol":{"keccak256":"0x005ec64c6313f0555d59e278f9a7a5ab2db5bdc72a027f255a37c327af1ec02d","urls":["bzz-raw://4ece9f0b9c8daca08c76b6b5405a6446b6f73b3a15fab7ff56e296cbd4a2c875","dweb:/ipfs/QmQyRpyPRL5SQuAgj6SHmbir3foX65FJjbVTTQrA2EFg6L"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/math/SafeCast.sol":{"keccak256":"0xe19a4d5f31d2861e7344e8e535e2feafb913d806d3e2b5fe7782741a2a7094fe","urls":["bzz-raw://4aed79c0fa6f0546ed02f2f683e8f77f0fd2ed7eb34d8bbf3d373c9a6d95b13c","dweb:/ipfs/QmWqVz6UAVqmnWU5pqYPt1o6iDEZyPaBraAA3rKfTTSfYj"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/math/SignedMath.sol":{"keccak256":"0x5f7e4076e175393767754387c962926577f1660dd9b810187b9002407656be72","urls":["bzz-raw://7d533a1c97cd43a57cd9c465f7ee8dd0e39ae93a8fb8ff8e5303a356b081cdcc","dweb:/ipfs/QmVBEei6aTnvYNZp2CHYVNKyZS4q1KkjANfY39WVXZXVoT"],"license":"MIT"},"lib/base64/base64.sol":{"keccak256":"0xa73959e6ef0b693e4423a562e612370160b934a75e618361ddd8c9c4b8ddbaaf","urls":["bzz-raw://17c12e16d8d66f3af15d8787920bd41ca6c1e7517a212a6b9cebd4b6d38f36fe","dweb:/ipfs/QmcXMnZUXEz6LRKsm3CSvqdPboAzmezavi8bTg2dRxM2yE"],"license":"MIT"},"lib/solady/src/utils/LibString.sol":{"keccak256":"0xbb90caa572b7f65689b74867ec211fed8cde92714314101f4287d00a40d95ab2","urls":["bzz-raw://93d2fa323793f3a2044a58789ea73c82595bb181a449b507637d8a537f9d8a16","dweb:/ipfs/Qmf4eAuQZTjARJMq2e2fXktpM2MSBow1JuMUPJbisEgZke"],"license":"MIT"}},"version":1},"id":220} \ No newline at end of file +{"abi":[{"type":"function","name":"CLOCK_MODE","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"DOMAIN_SEPARATOR","inputs":[],"outputs":[{"name":"result","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"__ERC721A_init","inputs":[{"name":"name_","type":"string","internalType":"string"},{"name":"symbol_","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"__SpaceOwner_init","inputs":[{"name":"name","type":"string","internalType":"string"},{"name":"symbol","type":"string","internalType":"string"},{"name":"version","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"approve","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"balanceOf","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"clock","inputs":[],"outputs":[{"name":"","type":"uint48","internalType":"uint48"}],"stateMutability":"view"},{"type":"function","name":"delegate","inputs":[{"name":"delegatee","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"delegateBySig","inputs":[{"name":"delegatee","type":"address","internalType":"address"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"expiry","type":"uint256","internalType":"uint256"},{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"delegates","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"eip712Domain","inputs":[],"outputs":[{"name":"fields","type":"bytes1","internalType":"bytes1"},{"name":"name","type":"string","internalType":"string"},{"name":"version","type":"string","internalType":"string"},{"name":"chainId","type":"uint256","internalType":"uint256"},{"name":"verifyingContract","type":"address","internalType":"address"},{"name":"salt","type":"bytes32","internalType":"bytes32"},{"name":"extensions","type":"uint256[]","internalType":"uint256[]"}],"stateMutability":"view"},{"type":"function","name":"getApproved","inputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getDefaultUri","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"getFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getPastTotalSupply","inputs":[{"name":"timepoint","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPastVotes","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"timepoint","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getSpaceInfo","inputs":[{"name":"space","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ISpaceOwnerBase.Space","components":[{"name":"name","type":"string","internalType":"string"},{"name":"uri","type":"string","internalType":"string"},{"name":"tokenId","type":"uint256","internalType":"uint256"},{"name":"createdAt","type":"uint256","internalType":"uint256"},{"name":"shortDescription","type":"string","internalType":"string"},{"name":"longDescription","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"getVotes","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"isApprovedForAll","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"operator","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"mintSpace","inputs":[{"name":"name","type":"string","internalType":"string"},{"name":"uri","type":"string","internalType":"string"},{"name":"space","type":"address","internalType":"address"},{"name":"shortDescription","type":"string","internalType":"string"},{"name":"longDescription","type":"string","internalType":"string"}],"outputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"nextTokenId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"nonces","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"ownerOf","inputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"safeTransferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"safeTransferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"tokenId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"setApprovalForAll","inputs":[{"name":"operator","type":"address","internalType":"address"},{"name":"approved","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setDefaultUri","inputs":[{"name":"uri","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setFactory","inputs":[{"name":"factory","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"tokenURI","inputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"tokenId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"updateSpaceInfo","inputs":[{"name":"space","type":"address","internalType":"address"},{"name":"name","type":"string","internalType":"string"},{"name":"uri","type":"string","internalType":"string"},{"name":"shortDescription","type":"string","internalType":"string"},{"name":"longDescription","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"approved","type":"address","indexed":true,"internalType":"address"},{"name":"tokenId","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ApprovalForAll","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"operator","type":"address","indexed":true,"internalType":"address"},{"name":"approved","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"ConsecutiveTransfer","inputs":[{"name":"fromTokenId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"toTokenId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"DelegateChanged","inputs":[{"name":"delegator","type":"address","indexed":true,"internalType":"address"},{"name":"fromDelegate","type":"address","indexed":true,"internalType":"address"},{"name":"toDelegate","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"DelegateVotesChanged","inputs":[{"name":"delegate","type":"address","indexed":true,"internalType":"address"},{"name":"previousBalance","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"newBalance","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"EIP712DomainChanged","inputs":[],"anonymous":false},{"type":"event","name":"GuardianUpdated","inputs":[{"name":"caller","type":"address","indexed":true,"internalType":"address"},{"name":"enabled","type":"bool","indexed":true,"internalType":"bool"},{"name":"cooldown","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint32","indexed":false,"internalType":"uint32"}],"anonymous":false},{"type":"event","name":"InterfaceAdded","inputs":[{"name":"interfaceId","type":"bytes4","indexed":true,"internalType":"bytes4"}],"anonymous":false},{"type":"event","name":"InterfaceRemoved","inputs":[{"name":"interfaceId","type":"bytes4","indexed":true,"internalType":"bytes4"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"SpaceOwner__SetDefaultUri","inputs":[{"name":"uri","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"SpaceOwner__SetFactory","inputs":[{"name":"factory","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"SpaceOwner__UpdateSpace","inputs":[{"name":"space","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"tokenId","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"AlreadyDisabled","inputs":[]},{"type":"error","name":"AlreadyEnabled","inputs":[]},{"type":"error","name":"ApprovalCallerNotOwnerNorApproved","inputs":[]},{"type":"error","name":"ApprovalQueryForNonexistentToken","inputs":[]},{"type":"error","name":"BalanceQueryForZeroAddress","inputs":[]},{"type":"error","name":"ECDSAInvalidSignature","inputs":[]},{"type":"error","name":"ECDSAInvalidSignatureLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ECDSAInvalidSignatureS","inputs":[{"name":"s","type":"bytes32","internalType":"bytes32"}]},{"type":"error","name":"GuardianEnabled","inputs":[]},{"type":"error","name":"Initializable_AlreadyInitialized","inputs":[{"name":"version","type":"uint32","internalType":"uint32"}]},{"type":"error","name":"Initializable_InInitializingState","inputs":[]},{"type":"error","name":"Initializable_NotInInitializingState","inputs":[]},{"type":"error","name":"Introspection_AlreadySupported","inputs":[]},{"type":"error","name":"Introspection_NotSupported","inputs":[]},{"type":"error","name":"InvalidAccountNonce","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"currentNonce","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"MintERC2309QuantityExceedsLimit","inputs":[]},{"type":"error","name":"MintToZeroAddress","inputs":[]},{"type":"error","name":"MintZeroQuantity","inputs":[]},{"type":"error","name":"NotExternalAccount","inputs":[]},{"type":"error","name":"Ownable__NotOwner","inputs":[{"name":"account","type":"address","internalType":"address"}]},{"type":"error","name":"Ownable__ZeroAddress","inputs":[]},{"type":"error","name":"OwnerQueryForNonexistentToken","inputs":[]},{"type":"error","name":"OwnershipNotInitializedForExtraData","inputs":[]},{"type":"error","name":"SafeCastOverflowedUintDowncast","inputs":[{"name":"bits","type":"uint8","internalType":"uint8"},{"name":"value","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SpaceOwner__DefaultUriNotSet","inputs":[]},{"type":"error","name":"SpaceOwner__OnlyFactoryAllowed","inputs":[]},{"type":"error","name":"SpaceOwner__OnlySpaceOwnerAllowed","inputs":[]},{"type":"error","name":"SpaceOwner__SpaceNotFound","inputs":[]},{"type":"error","name":"TransferCallerNotOwnerNorApproved","inputs":[]},{"type":"error","name":"TransferFromIncorrectOwner","inputs":[]},{"type":"error","name":"TransferToNonERC721ReceiverImplementer","inputs":[]},{"type":"error","name":"TransferToZeroAddress","inputs":[]},{"type":"error","name":"URIQueryForNonexistentToken","inputs":[]},{"type":"error","name":"Validator__InvalidAddress","inputs":[]},{"type":"error","name":"Validator__InvalidStringLength","inputs":[]}],"bytecode":{"object":"0x60806040523480156200001157600080fd5b506200001c62000022565b620000ca565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054640100000000900460ff16156200006f576040516366008a2d60e01b815260040160405180910390fd5b805463ffffffff9081161015620000c757805463ffffffff191663ffffffff90811782556040519081527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15b50565b613afe80620000da6000396000f3fe6080604052600436106101f95760003560e01c806375794a3c1161010d5780639ab24eb0116100a0578063c87b56dd1161006f578063c87b56dd1461057c578063d2f01f191461059c578063d6536540146105bc578063d7a901d3146105d1578063e985e9c5146105f157600080fd5b80639ab24eb014610509578063a22cb46514610529578063b88d4fde14610549578063c3cda5201461055c57600080fd5b806388cc58e4116100dc57806388cc58e4146104935780638e539e8c146104a857806391ddadf4146104c857806395d89b41146104f457600080fd5b806375794a3c146104165780637ecebe001461042b578063848806141461044b57806384b0196e1461046b57600080fd5b806342842e0e116101905780635bb478081161015f5780635bb47808146103695780635c19a95c146103895780636352211e146103a95780636a9a38e6146103c957806370a08231146103f657600080fd5b806342842e0e14610301578063466a18de146103145780634bf5d7e914610334578063587cde1e1461034957600080fd5b806323b872dd116101cc57806323b872dd146102995780633644e515146102ac5780633a46b1a8146102c15780633bf5b8f4146102e157600080fd5b806306fdde03146101fe578063081812fc14610229578063095ea7b31461026157806318160ddd14610276575b600080fd5b34801561020a57600080fd5b50610213610621565b6040516102209190613172565b60405180910390f35b34801561023557600080fd5b50610249610244366004613185565b6106bc565b6040516001600160a01b039091168152602001610220565b61027461026f3660046131ba565b6106cd565b005b34801561028257600080fd5b5061028b610715565b604051908152602001610220565b6102746102a73660046131e4565b610724565b3480156102b857600080fd5b5061028b610934565b3480156102cd57600080fd5b5061028b6102dc3660046131ba565b61093e565b3480156102ed57600080fd5b5061028b6102fc3660046132cc565b610951565b61027461030f3660046131e4565b6109bd565b34801561032057600080fd5b5061027461032f36600461338a565b6109dd565b34801561034057600080fd5b50610213610a3a565b34801561035557600080fd5b506102496103643660046133bf565b610a44565b34801561037557600080fd5b506102746103843660046133bf565b610a4f565b34801561039557600080fd5b506102746103a43660046133bf565b610aa4565b3480156103b557600080fd5b506102496103c4366004613185565b610aae565b3480156103d557600080fd5b506103e96103e43660046133bf565b610ab9565b60405161022091906133da565b34801561040257600080fd5b5061028b6104113660046133bf565b610afb565b34801561042257600080fd5b5061028b610b06565b34801561043757600080fd5b5061028b6104463660046133bf565b610b10565b34801561045757600080fd5b5061027461046636600461346c565b610b4d565b34801561047757600080fd5b50610480610b6a565b60405161022097969594939291906134d8565b34801561049f57600080fd5b50610249610c2d565b3480156104b457600080fd5b5061028b6104c3366004613185565b610c4e565b3480156104d457600080fd5b506104dd610c59565b60405165ffffffffffff9091168152602001610220565b34801561050057600080fd5b50610213610c63565b34801561051557600080fd5b5061028b6105243660046133bf565b610c7b565b34801561053557600080fd5b50610274610544366004613571565b610c86565b6102746105573660046135ad565b610cbf565b34801561056857600080fd5b50610274610577366004613629565b610d09565b34801561058857600080fd5b50610213610597366004613185565b610d17565b3480156105a857600080fd5b506102746105b7366004613689565b610d48565b3480156105c857600080fd5b50610213610d9b565b3480156105dd57600080fd5b506102746105ec3660046136ed565b610da5565b3480156105fd57600080fd5b5061061161060c366004613775565b610ea1565b6040519015158152602001610220565b606061062b610ead565b6002018054610639906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054610665906137a8565b80156106b25780601f10610687576101008083540402835291602001916106b2565b820191906000526020600020905b81548152906001019060200180831161069557829003601f168201915b5050505050905090565b60006106c782610ed1565b92915050565b6001600160a01b038216158015906106e957506106e933610f1e565b1561070757604051638043dfaf60e01b815260040160405180910390fd5b6107118282610f9a565b5050565b600061071f610fa6565b905090565b600061072f82610fc5565b9050836001600160a01b0316816001600160a01b0316146107625760405162a1148160e81b815260040160405180910390fd5b60008061076e84611060565b91509150610793818761077e3390565b6001600160a01b039081169116811491141790565b6107be576107a18633610ea1565b6107be57604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b0385166107e557604051633a954ecd60e21b815260040160405180910390fd5b6107f28686866001611088565b80156107fd57600082555b610805610ead565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610831610ead565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610868610ead565b60008681526004919091016020526040812091909155600160e11b841690036108de5760018401610897610ead565b6000828152600491909101602052604081205490036108dc576108b8610ead565b5481146108dc57836108c8610ead565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461092c86868660016110c7565b505050505050565b600061071f6110d2565b600061094a83836110dc565b9392505050565b600080600080516020613a9e83398151915280549091506001600160a01b031633146109905760405163443e750b60e11b815260040160405180910390fd5b61099861117a565b91506109a887878488888861118a565b6109b33360016112e1565b5095945050505050565b6109d883838360405180602001604052806000815250610cbf565b505050565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae300546001600160a01b03163314610a2e576040516365f4906560e01b81523360048201526024015b60405180910390fd5b610a3781611431565b50565b606061071f6114a2565b60006106c78261153a565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae300546001600160a01b03163314610a9b576040516365f4906560e01b8152336004820152602401610a25565b610a3781611577565b610a3733826115e1565b60006106c782610fc5565b610af26040518060c001604052806060815260200160608152602001600081526020016000815260200160608152602001606081525090565b6106c78261167b565b60006106c782611986565b600061071f61117a565b6001600160a01b03811660009081527fda5d6d87446d81938877f0ee239dac391146dd7466ea30567f72becf06773c0060205260408120546106c7565b610b56856119ef565b610b638585858585611a2c565b5050505050565b600060608082808083600080516020613abe83398151915254158015610baf57507f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d54155b610bf35760405162461bcd60e51b81526020600482015260156024820152741152540dcc4c8e88155b9a5b9a5d1a585b1a5e9959605a1b6044820152606401610a25565b610bfb611b17565b610c03611b2d565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b600061071f600080516020613a9e833981519152546001600160a01b031690565b60006106c782611b43565b600061071f611bdc565b6060610c6d610ead565b6003018054610639906137a8565b60006106c782611be7565b808015610c975750610c9733610f1e565b15610cb557604051638043dfaf60e01b815260040160405180910390fd5b6107118282611c15565b610cca848484610724565b6001600160a01b0383163b15610d0357610ce684848484611c92565b610d03576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b61092c868686868686611d7e565b6060610d2282611e67565b610d3f57604051630a14c4b560e41b815260040160405180910390fd5b6106c782611ea3565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054600160201b900460ff16610d9157604051630ef4733760e31b815260040160405180910390fd5b610711828261211c565b606061071f612146565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054600160201b900460ff161580610de157303b1515610df0565b8154600163ffffffff90911610155b15610e19578154604051630a8ef77f60e31b815263ffffffff9091166004820152602401610a25565b815463ffffffff191660011782558015610e4057815464ff000000001916600160201b1782555b610e4a858561211c565b610e548584612165565b8015610b6357815464ff0000000019168255604051600181527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15050505050565b600061094a83836121b8565b7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df0090565b6000610edc82611e67565b610ef9576040516333d1c03960e21b815260040160405180910390fd5b610f01610ead565b60009283526006016020525060409020546001600160a01b031690565b60007f0c89d3aad1b583c77a2e9f9fffa651b386c9c29e300bf2a8e2f3de1bb0100a006001600160a01b0383163b15801561094a57506001600160a01b0383166000908152600182016020526040902054158061094a57506001600160a01b038316600090815260018201602052604090205442109392505050565b610711828260016121f5565b600080610fb1610ead565b60010154610fbd610ead565b540303919050565b600080610fd0610ead565b60008481526004820160205260408120549350909150600160e01b831690036110465781600003611040578054831061101c57604051636f96cda160e11b815260040160405180910390fd5b5b60001990920160008181526004840160205260409020549092909150811561101d575b50919050565b50604051636f96cda160e11b815260040160405180910390fd5b600080600061106d610ead565b60009485526006016020525050604090912080549092909150565b6001600160a01b038416158015906110a457506110a484610f1e565b156110c257604051638043dfaf60e01b815260040160405180910390fd5b610d03565b6110c28484836122aa565b600061071f61234c565b60006110e6611bdc565b65ffffffffffff1682106111335760405162461bcd60e51b81526020600482015260146024820152730566f7465733a20667574757265206c6f6f6b75760641b6044820152606401610a25565b61116a61113f836123c0565b6001600160a01b0385166000908152600080516020613ade83398151915260205260409020906123f5565b6001600160e01b03169392505050565b6000611184610ead565b54919050565b6111958660026124a9565b6111a08560006124a9565b6111a9836124cd565b60008481527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477016020908152604080832080546001600160a01b0319166001600160a01b03881690811790915581516080810183528a81528084018a90528083018990524260608201529084527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477029092529091208151600080516020613a9e833981519152929190819061125c9082613824565b50602082015160018201906112719082613824565b5060408281015160028301556060909201516003918201558151808301835285815260208082018690526001600160a01b03881660009081529285019052919020815181906112c09082613824565b50602082015160018201906112d59082613824565b50505050505050505050565b60006112eb610ead565b54905060008290036113105760405163b562e8dd60e01b815260040160405180910390fd5b61131d6000848385611088565b680100000000000000018202611331610ead565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b171761136c610ead565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146113f657808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001016113be565b508160000361141757604051622e076360e81b815260040160405180910390fd5b80611420610ead565b55506109d8905060008483856110c7565b61143c8160016124a9565b7f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477046114678282613824565b507f8fe3adc25723aa6a0b7eb4b4bacf52e92165c180bde5353f7cf606fbf5591f2b816040516114979190613172565b60405180910390a150565b6060436114ad611bdc565b65ffffffffffff16146115025760405162461bcd60e51b815260206004820152601860248201527f566f7465733a2062726f6b656e20636c6f636b206d6f646500000000000000006044820152606401610a25565b5060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b6001600160a01b0390811660009081527f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f6560205260409020541690565b611580816124cd565b600080516020613a9e83398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f64c14256e532eac2ec90ddc4973ed2d3f5623faf7951d90eec38f9b7812f99a79181900360200190a15050565b60006115ec8361153a565b6001600160a01b0384811660008181527f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f65602052604080822080546001600160a01b031916888616908117909155905194955093928516927f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a46109d88183611676866124f4565b6124ff565b6116b46040518060c001604052806060815260200160608152602001600081526020016000815260200160608152602001606081525090565b6001600160a01b03821660009081527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe5747702602090815260408083207f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe574770390925291829020825160c0810190935281549192909181908490611732906137a8565b80601f016020809104026020016040519081016040528092919081815260200182805461175e906137a8565b80156117ab5780601f10611780576101008083540402835291602001916117ab565b820191906000526020600020905b81548152906001019060200180831161178e57829003601f168201915b505050505081526020018360010180546117c4906137a8565b80601f01602080910402602001604051908101604052809291908181526020018280546117f0906137a8565b801561183d5780601f106118125761010080835404028352916020019161183d565b820191906000526020600020905b81548152906001019060200180831161182057829003601f168201915b50505050508152602001836002015481526020018360030154815260200182600001805461186a906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611896906137a8565b80156118e35780601f106118b8576101008083540402835291602001916118e3565b820191906000526020600020905b8154815290600101906020018083116118c657829003601f168201915b505050505081526020018260010180546118fc906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611928906137a8565b80156119755780601f1061194a57610100808354040283529160200191611975565b820191906000526020600020905b81548152906001019060200180831161195857829003601f168201915b505050505081525092505050919050565b60006001600160a01b0382166119af576040516323d3ad8160e21b815260040160405180910390fd5b67ffffffffffffffff6119c0610ead565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b33611a056119fc8361167b565b60400151610aae565b6001600160a01b031614610a375760405163dbfcf17d60e01b815260040160405180910390fd5b611a378460026124a9565b611a428360016124a9565b6001600160a01b03851660009081527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe574770260205260409020600080516020613a9e8339815191529080611a948782613824565b5060018101611aa38682613824565b506001600160a01b0387166000908152600383016020526040902080611ac98682613824565b5060018101611ad88582613824565b506040516001600160a01b038916907f66da702131703ee5e745ecf2f5b98311caa00729edd55541baad49289fc42ed890600090a25050505050505050565b6060600080516020613abe83398151915261062b565b6060600080516020613abe833981519152610c6d565b6000611b4d611bdc565b65ffffffffffff168210611b9a5760405162461bcd60e51b81526020600482015260146024820152730566f7465733a20667574757265206c6f6f6b75760641b6044820152606401610a25565b611bcd611ba6836123c0565b7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67906123f5565b6001600160e01b031692915050565b600061071f43612680565b6001600160a01b0381166000908152600080516020613ade83398151915260205260408120611bcd906126b3565b80611c1e610ead565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290611cc79033908990889088906004016138e4565b6020604051808303816000875af1925050508015611d02575060408051601f3d908101601f19168201909252611cff91810190613921565b60015b611d60573d808015611d30576040519150601f19603f3d011682016040523d82523d6000602084013e611d35565b606091505b508051600003611d58576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490505b949350505050565b83421115611dce5760405162461bcd60e51b815260206004820152601860248201527f566f7465733a207369676e6174757265206578706972656400000000000000006044820152606401610a25565b604080517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60208201526001600160a01b038816918101919091526060810186905260808101859052600090611e4890611e409060a001604051602081830303815290604052805190602001206126ec565b858585612719565b9050611e548187612747565b611e5e81886115e1565b50505050505050565b6000611e71610ead565b54821080156106c75750600160e01b611e88610ead565b60008481526004919091016020526040902054161592915050565b60008181527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477016020526040902054606090600080516020613a9e833981519152906001600160a01b031680611f0b5760405163af5f208f60e01b815260040160405180910390fd5b6001600160a01b03811660009081526002830160205260409020600181018054611f34906137a8565b159050611fd257806001018054611f4a906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611f76906137a8565b8015611fc35780601f10611f9857610100808354040283529160200191611fc3565b820191906000526020600020905b815481529060010190602001808311611fa657829003601f168201915b50505050509350505050919050565b6000836004018054611fe3906137a8565b80601f016020809104026020016040519081016040528092919081815260200182805461200f906137a8565b801561205c5780601f106120315761010080835404028352916020019161205c565b820191906000526020600020905b81548152906001019060200180831161203f57829003601f168201915b505050505090506000815190508060000361208a5760405163cd251ac560e01b815260040160405180910390fd5b81600182038151811061209f5761209f61394b565b6020910101516001600160f81b031916602f60f81b146120f857816120cc856001600160a01b03166127b9565b6040516020016120dd929190613961565b60405160208183030381529060405295505050505050919050565b8161210b856001600160a01b03166127b9565b6040516020016120dd92919061399d565b61212c6380ac58cd60e01b612862565b61213c635b5e139f60e01b612862565b6107118282612940565b6060600080516020613a9e8339815191526004018054610639906137a8565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054600160201b900460ff166121ae57604051630ef4733760e31b815260040160405180910390fd5b6107118282612972565b60006121c2610ead565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b600061220083610aae565b9050811561223f57336001600160a01b0382161461223f5761222281336121b8565b61223f576040516367d9dca160e11b815260040160405180910390fd5b83612248610ead565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6001600160a01b0383166122f0576122ed7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67612a046122e884612a10565b612a44565b50505b6001600160a01b0382166123315761232e7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67612a8d6122e884612a10565b50505b6109d861233d8461153a565b6123468461153a565b836124ff565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f612377612a99565b61237f612aff565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b600063ffffffff8211156123f1576040516306dfcc6560e41b81526020600482015260248101839052604401610a25565b5090565b81546000908181600581111561245257600061241084612b4f565b61241a90856139e2565b60008881526020902090915081015463ffffffff908116908716101561244257809150612450565b61244d8160016139f5565b92505b505b600061246087878585612c37565b9050801561249b57612485876124776001846139e2565b600091825260209091200190565b54600160201b90046001600160e01b031661249e565b60005b979650505050505050565b815182908211156109d8576040516374eb20a760e01b815260040160405180910390fd5b6001600160a01b038116610a37576040516302e47d1560e41b815260040160405180910390fd5b60006106c782610afb565b816001600160a01b0316836001600160a01b0316141580156125215750600081115b156109d8576001600160a01b038316156125d1576001600160a01b0383166000908152600080516020613ade83398151915260205260408120819061256c90612a8d6122e886612a10565b6001600160e01b031691506001600160e01b03169150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516125c6929190918252602082015260400190565b60405180910390a250505b6001600160a01b038216156109d8576001600160a01b0382166000908152600080516020613ade83398151915260205260408120819061261790612a046122e886612a10565b6001600160e01b031691506001600160e01b03169150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051612671929190918252602082015260400190565b60405180910390a25050505050565b600065ffffffffffff8211156123f1576040516306dfcc6560e41b81526030600482015260248101839052604401610a25565b805460009080156126e3576126cd836124776001846139e2565b54600160201b90046001600160e01b031661094a565b60009392505050565b60006106c76126f96110d2565b8360405161190160f01b8152600281019290925260228201526042902090565b60008060008061272b88888888612c95565b92509250925061273b8282612d64565b50909695505050505050565b6001600160a01b03821660009081527fda5d6d87446d81938877f0ee239dac391146dd7466ea30567f72becf06773c00602052604090208054600181019091558181146109d8576040516301d4b62360e61b81526001600160a01b038416600482015260248101829052604401610a25565b60606127c482612e1d565b6028602282019081209192507f4040404040404040404040404040404040404040404040404040404040404040917f888888888888888888888888888888888888888888888888888888888888888016601160f31b60005b82811a82028180015260018101906012190161281c57505050818151166000511660011c8151188152602081019050818151166020511660011c81511881525050919050565b6001600160e01b0319811660009081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00602052604090205460ff1615156001146128ef576001600160e01b0319811660009081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b0060205260409020805460ff19166001179055612908565b604051637967f77d60e11b815260040160405180910390fd5b6040516001600160e01b03198216907f78f84e5b1c5c05be2b5ad3800781dd404d6d6c6302bc755c0fe20f58a33a7f2290600090a250565b600061294a610ead565b90506002810161295a8482613824565b50600381016129698382613824565b50600090555050565b7f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336e61299d8382613824565b507f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336f6129c98282613824565b50506000600080516020613abe8339815191528190557f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d5550565b600061094a8284613a08565b60006001600160e01b038211156123f1576040516306dfcc6560e41b815260e0600482015260248101839052604401610a25565b600080612a80612a62612a55611bdc565b65ffffffffffff166123c0565b612a78612a6e886126b3565b868863ffffffff16565b879190612e41565b915091505b935093915050565b600061094a8284613a2f565b600080612aa4611b17565b805190915015612abb578051602090910120919050565b600080516020613abe833981519152548015612ad75792915050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4709250505090565b600080612b0a611b2d565b805190915015612b21578051602090910120919050565b7f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d548015612ad75792915050565b600081600003612b6157506000919050565b60006001612b6e84612e4f565b901c6001901b90506001818481612b8757612b87613a4f565b048201901c90506001818481612b9f57612b9f613a4f565b048201901c90506001818481612bb757612bb7613a4f565b048201901c90506001818481612bcf57612bcf613a4f565b048201901c90506001818481612be757612be7613a4f565b048201901c90506001818481612bff57612bff613a4f565b048201901c90506001818481612c1757612c17613a4f565b048201901c905061094a81828581612c3157612c31613a4f565b04612ee3565b60005b81831015612c8d576000612c4e8484612ef9565b60008781526020902090915063ffffffff86169082015463ffffffff161115612c7957809250612c87565b612c848160016139f5565b93505b50612c3a565b509392505050565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115612cd05750600091506003905082612d5a565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015612d24573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612d5057506000925060019150829050612d5a565b9250600091508190505b9450945094915050565b6000826003811115612d7857612d78613a65565b03612d81575050565b6001826003811115612d9557612d95613a65565b03612db35760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115612dc757612dc7613a65565b03612de85760405163fce698f760e01b815260048101829052602401610a25565b6003826003811115612dfc57612dfc613a65565b03610711576040516335e2f38360e21b815260048101829052602401610a25565b6060612e2882612f14565b8051613078825260020160011990910190815292915050565b600080612a80858585612f83565b600080608083901c15612e6457608092831c92015b604083901c15612e7657604092831c92015b602083901c15612e8857602092831c92015b601083901c15612e9a57601092831c92015b600883901c15612eac57600892831c92015b600483901c15612ebe57600492831c92015b600283901c15612ed057600292831c92015b600183901c156106c75760010192915050565b6000818310612ef2578161094a565b5090919050565b6000612f086002848418613a7b565b61094a908484166139f5565b60606040519050608081016040526f30313233343536373839616263646566600f526002810190506028815260208101600060288201528260601b925060005b808101820184821a600f81165160018301538060041c5182535050600181019060121901612f54575050919050565b8254600090819080156130c9576000612fa1876124776001856139e2565b60408051808201909152905463ffffffff808216808452600160201b9092046001600160e01b0316602084015291925090871610156130225760405162461bcd60e51b815260206004820152601b60248201527f436865636b706f696e743a2064656372656173696e67206b65797300000000006044820152606401610a25565b805163ffffffff80881691160361306a5784613043886124776001866139e2565b80546001600160e01b0392909216600160201b0263ffffffff9092169190911790556130b9565b6040805180820190915263ffffffff80881682526001600160e01b0380881660208085019182528b54600181018d5560008d81529190912094519151909216600160201b029216919091179101555b602001519250839150612a859050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a5560008a815291822095519251909316600160201b029190931617920191909155905081612a85565b60005b8381101561313d578181015183820152602001613125565b50506000910152565b6000815180845261315e816020860160208601613122565b601f01601f19169290920160200192915050565b60208152600061094a6020830184613146565b60006020828403121561319757600080fd5b5035919050565b80356001600160a01b03811681146131b557600080fd5b919050565b600080604083850312156131cd57600080fd5b6131d68361319e565b946020939093013593505050565b6000806000606084860312156131f957600080fd5b6132028461319e565b92506132106020850161319e565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b600067ffffffffffffffff8084111561325157613251613220565b604051601f8501601f19908116603f0116810190828211818310171561327957613279613220565b8160405280935085815286868601111561329257600080fd5b858560208301376000602087830101525050509392505050565b600082601f8301126132bd57600080fd5b61094a83833560208501613236565b600080600080600060a086880312156132e457600080fd5b853567ffffffffffffffff808211156132fc57600080fd5b61330889838a016132ac565b9650602088013591508082111561331e57600080fd5b61332a89838a016132ac565b95506133386040890161319e565b9450606088013591508082111561334e57600080fd5b61335a89838a016132ac565b9350608088013591508082111561337057600080fd5b5061337d888289016132ac565b9150509295509295909350565b60006020828403121561339c57600080fd5b813567ffffffffffffffff8111156133b357600080fd5b611d76848285016132ac565b6000602082840312156133d157600080fd5b61094a8261319e565b602081526000825160c060208401526133f660e0840182613146565b90506020840151601f19808584030160408601526134148383613146565b9250604086015160608601526060860151608086015260808601519150808584030160a08601526134458383613146565b925060a08601519150808584030160c0860152506134638282613146565b95945050505050565b600080600080600060a0868803121561348457600080fd5b61348d8661319e565b9450602086013567ffffffffffffffff808211156134aa57600080fd5b6134b689838a016132ac565b955060408801359150808211156134cc57600080fd5b61333889838a016132ac565b60ff60f81b881681526000602060e060208401526134f960e084018a613146565b838103604085015261350b818a613146565b606085018990526001600160a01b038816608086015260a0850187905284810360c08601528551808252602080880193509091019060005b8181101561355f57835183529284019291840191600101613543565b50909c9b505050505050505050505050565b6000806040838503121561358457600080fd5b61358d8361319e565b9150602083013580151581146135a257600080fd5b809150509250929050565b600080600080608085870312156135c357600080fd5b6135cc8561319e565b93506135da6020860161319e565b925060408501359150606085013567ffffffffffffffff8111156135fd57600080fd5b8501601f8101871361360e57600080fd5b61361d87823560208401613236565b91505092959194509250565b60008060008060008060c0878903121561364257600080fd5b61364b8761319e565b95506020870135945060408701359350606087013560ff8116811461366f57600080fd5b9598949750929560808101359460a0909101359350915050565b6000806040838503121561369c57600080fd5b823567ffffffffffffffff808211156136b457600080fd5b6136c0868387016132ac565b935060208501359150808211156136d657600080fd5b506136e3858286016132ac565b9150509250929050565b60008060006060848603121561370257600080fd5b833567ffffffffffffffff8082111561371a57600080fd5b613726878388016132ac565b9450602086013591508082111561373c57600080fd5b613748878388016132ac565b9350604086013591508082111561375e57600080fd5b5061376b868287016132ac565b9150509250925092565b6000806040838503121561378857600080fd5b6137918361319e565b915061379f6020840161319e565b90509250929050565b600181811c908216806137bc57607f821691505b60208210810361104057634e487b7160e01b600052602260045260246000fd5b601f8211156109d8576000816000526020600020601f850160051c810160208610156138055750805b601f850160051c820191505b8181101561092c57828155600101613811565b815167ffffffffffffffff81111561383e5761383e613220565b6138528161384c84546137a8565b846137dc565b602080601f831160018114613887576000841561386f5750858301515b600019600386901b1c1916600185901b17855561092c565b600085815260208120601f198616915b828110156138b657888601518255948401946001909101908401613897565b50858210156138d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061391790830184613146565b9695505050505050565b60006020828403121561393357600080fd5b81516001600160e01b03198116811461094a57600080fd5b634e487b7160e01b600052603260045260246000fd5b60008351613973818460208801613122565b602f60f81b9083019081528351613991816001840160208801613122565b01600101949350505050565b600083516139af818460208801613122565b8351908301906139c3818360208801613122565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156106c7576106c76139cc565b808201808211156106c7576106c76139cc565b6001600160e01b03818116838216019080821115613a2857613a286139cc565b5092915050565b6001600160e01b03828116828216039080821115613a2857613a286139cc565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b600082613a9857634e487b7160e01b600052601260045260246000fd5b50049056fe7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477003a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336c423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f66","sourceMap":"586:4577:220:-:0;;;;;;;;;;;;-1:-1:-1;378:22:68;:20;:22::i;:::-;586:4577:220;;1653:314:83;296:66:84;1779:14:83;;;;;;;1775:62;;;1802:35;;-1:-1:-1;;;1802:35:83;;;;;;;;;;;1775:62;1848:9;;1860:16;1848:9;;;:28;1844:119;;;1886:28;;-1:-1:-1;;1886:28:83;1898:16;1886:28;;;;;1927:29;;158:42:403;;;1927:29:83;;146:2:403;131:18;1927:29:83;;;;;;;1844:119;1694:273;1653:314::o;14:192:403:-;586:4577:220;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106101f95760003560e01c806375794a3c1161010d5780639ab24eb0116100a0578063c87b56dd1161006f578063c87b56dd1461057c578063d2f01f191461059c578063d6536540146105bc578063d7a901d3146105d1578063e985e9c5146105f157600080fd5b80639ab24eb014610509578063a22cb46514610529578063b88d4fde14610549578063c3cda5201461055c57600080fd5b806388cc58e4116100dc57806388cc58e4146104935780638e539e8c146104a857806391ddadf4146104c857806395d89b41146104f457600080fd5b806375794a3c146104165780637ecebe001461042b578063848806141461044b57806384b0196e1461046b57600080fd5b806342842e0e116101905780635bb478081161015f5780635bb47808146103695780635c19a95c146103895780636352211e146103a95780636a9a38e6146103c957806370a08231146103f657600080fd5b806342842e0e14610301578063466a18de146103145780634bf5d7e914610334578063587cde1e1461034957600080fd5b806323b872dd116101cc57806323b872dd146102995780633644e515146102ac5780633a46b1a8146102c15780633bf5b8f4146102e157600080fd5b806306fdde03146101fe578063081812fc14610229578063095ea7b31461026157806318160ddd14610276575b600080fd5b34801561020a57600080fd5b50610213610621565b6040516102209190613172565b60405180910390f35b34801561023557600080fd5b50610249610244366004613185565b6106bc565b6040516001600160a01b039091168152602001610220565b61027461026f3660046131ba565b6106cd565b005b34801561028257600080fd5b5061028b610715565b604051908152602001610220565b6102746102a73660046131e4565b610724565b3480156102b857600080fd5b5061028b610934565b3480156102cd57600080fd5b5061028b6102dc3660046131ba565b61093e565b3480156102ed57600080fd5b5061028b6102fc3660046132cc565b610951565b61027461030f3660046131e4565b6109bd565b34801561032057600080fd5b5061027461032f36600461338a565b6109dd565b34801561034057600080fd5b50610213610a3a565b34801561035557600080fd5b506102496103643660046133bf565b610a44565b34801561037557600080fd5b506102746103843660046133bf565b610a4f565b34801561039557600080fd5b506102746103a43660046133bf565b610aa4565b3480156103b557600080fd5b506102496103c4366004613185565b610aae565b3480156103d557600080fd5b506103e96103e43660046133bf565b610ab9565b60405161022091906133da565b34801561040257600080fd5b5061028b6104113660046133bf565b610afb565b34801561042257600080fd5b5061028b610b06565b34801561043757600080fd5b5061028b6104463660046133bf565b610b10565b34801561045757600080fd5b5061027461046636600461346c565b610b4d565b34801561047757600080fd5b50610480610b6a565b60405161022097969594939291906134d8565b34801561049f57600080fd5b50610249610c2d565b3480156104b457600080fd5b5061028b6104c3366004613185565b610c4e565b3480156104d457600080fd5b506104dd610c59565b60405165ffffffffffff9091168152602001610220565b34801561050057600080fd5b50610213610c63565b34801561051557600080fd5b5061028b6105243660046133bf565b610c7b565b34801561053557600080fd5b50610274610544366004613571565b610c86565b6102746105573660046135ad565b610cbf565b34801561056857600080fd5b50610274610577366004613629565b610d09565b34801561058857600080fd5b50610213610597366004613185565b610d17565b3480156105a857600080fd5b506102746105b7366004613689565b610d48565b3480156105c857600080fd5b50610213610d9b565b3480156105dd57600080fd5b506102746105ec3660046136ed565b610da5565b3480156105fd57600080fd5b5061061161060c366004613775565b610ea1565b6040519015158152602001610220565b606061062b610ead565b6002018054610639906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054610665906137a8565b80156106b25780601f10610687576101008083540402835291602001916106b2565b820191906000526020600020905b81548152906001019060200180831161069557829003601f168201915b5050505050905090565b60006106c782610ed1565b92915050565b6001600160a01b038216158015906106e957506106e933610f1e565b1561070757604051638043dfaf60e01b815260040160405180910390fd5b6107118282610f9a565b5050565b600061071f610fa6565b905090565b600061072f82610fc5565b9050836001600160a01b0316816001600160a01b0316146107625760405162a1148160e81b815260040160405180910390fd5b60008061076e84611060565b91509150610793818761077e3390565b6001600160a01b039081169116811491141790565b6107be576107a18633610ea1565b6107be57604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b0385166107e557604051633a954ecd60e21b815260040160405180910390fd5b6107f28686866001611088565b80156107fd57600082555b610805610ead565b6001600160a01b0387166000908152600591909101602052604090208054600019019055610831610ead565b6001600160a01b03861660008181526005929092016020526040909120805460010190554260a01b17600160e11b17610868610ead565b60008681526004919091016020526040812091909155600160e11b841690036108de5760018401610897610ead565b6000828152600491909101602052604081205490036108dc576108b8610ead565b5481146108dc57836108c8610ead565b600083815260049190910160205260409020555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461092c86868660016110c7565b505050505050565b600061071f6110d2565b600061094a83836110dc565b9392505050565b600080600080516020613a9e83398151915280549091506001600160a01b031633146109905760405163443e750b60e11b815260040160405180910390fd5b61099861117a565b91506109a887878488888861118a565b6109b33360016112e1565b5095945050505050565b6109d883838360405180602001604052806000815250610cbf565b505050565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae300546001600160a01b03163314610a2e576040516365f4906560e01b81523360048201526024015b60405180910390fd5b610a3781611431565b50565b606061071f6114a2565b60006106c78261153a565b7f4675fa8241f86f37157864d3d49b85ad4b164352c516da28e1678a90470ae300546001600160a01b03163314610a9b576040516365f4906560e01b8152336004820152602401610a25565b610a3781611577565b610a3733826115e1565b60006106c782610fc5565b610af26040518060c001604052806060815260200160608152602001600081526020016000815260200160608152602001606081525090565b6106c78261167b565b60006106c782611986565b600061071f61117a565b6001600160a01b03811660009081527fda5d6d87446d81938877f0ee239dac391146dd7466ea30567f72becf06773c0060205260408120546106c7565b610b56856119ef565b610b638585858585611a2c565b5050505050565b600060608082808083600080516020613abe83398151915254158015610baf57507f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d54155b610bf35760405162461bcd60e51b81526020600482015260156024820152741152540dcc4c8e88155b9a5b9a5d1a585b1a5e9959605a1b6044820152606401610a25565b610bfb611b17565b610c03611b2d565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b600061071f600080516020613a9e833981519152546001600160a01b031690565b60006106c782611b43565b600061071f611bdc565b6060610c6d610ead565b6003018054610639906137a8565b60006106c782611be7565b808015610c975750610c9733610f1e565b15610cb557604051638043dfaf60e01b815260040160405180910390fd5b6107118282611c15565b610cca848484610724565b6001600160a01b0383163b15610d0357610ce684848484611c92565b610d03576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b61092c868686868686611d7e565b6060610d2282611e67565b610d3f57604051630a14c4b560e41b815260040160405180910390fd5b6106c782611ea3565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054600160201b900460ff16610d9157604051630ef4733760e31b815260040160405180910390fd5b610711828261211c565b606061071f612146565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef520008054600160201b900460ff161580610de157303b1515610df0565b8154600163ffffffff90911610155b15610e19578154604051630a8ef77f60e31b815263ffffffff9091166004820152602401610a25565b815463ffffffff191660011782558015610e4057815464ff000000001916600160201b1782555b610e4a858561211c565b610e548584612165565b8015610b6357815464ff0000000019168255604051600181527fe9c9b456cb2994b80aeef036cf59d26e9617df80f816a6ee5a5b4166e07e2f5c9060200160405180910390a15050505050565b600061094a83836121b8565b7f6569bde4a160c636ea8b8d11acb83a60d7fec0b8f2e09389306cba0e1340df0090565b6000610edc82611e67565b610ef9576040516333d1c03960e21b815260040160405180910390fd5b610f01610ead565b60009283526006016020525060409020546001600160a01b031690565b60007f0c89d3aad1b583c77a2e9f9fffa651b386c9c29e300bf2a8e2f3de1bb0100a006001600160a01b0383163b15801561094a57506001600160a01b0383166000908152600182016020526040902054158061094a57506001600160a01b038316600090815260018201602052604090205442109392505050565b610711828260016121f5565b600080610fb1610ead565b60010154610fbd610ead565b540303919050565b600080610fd0610ead565b60008481526004820160205260408120549350909150600160e01b831690036110465781600003611040578054831061101c57604051636f96cda160e11b815260040160405180910390fd5b5b60001990920160008181526004840160205260409020549092909150811561101d575b50919050565b50604051636f96cda160e11b815260040160405180910390fd5b600080600061106d610ead565b60009485526006016020525050604090912080549092909150565b6001600160a01b038416158015906110a457506110a484610f1e565b156110c257604051638043dfaf60e01b815260040160405180910390fd5b610d03565b6110c28484836122aa565b600061071f61234c565b60006110e6611bdc565b65ffffffffffff1682106111335760405162461bcd60e51b81526020600482015260146024820152730566f7465733a20667574757265206c6f6f6b75760641b6044820152606401610a25565b61116a61113f836123c0565b6001600160a01b0385166000908152600080516020613ade83398151915260205260409020906123f5565b6001600160e01b03169392505050565b6000611184610ead565b54919050565b6111958660026124a9565b6111a08560006124a9565b6111a9836124cd565b60008481527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477016020908152604080832080546001600160a01b0319166001600160a01b03881690811790915581516080810183528a81528084018a90528083018990524260608201529084527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477029092529091208151600080516020613a9e833981519152929190819061125c9082613824565b50602082015160018201906112719082613824565b5060408281015160028301556060909201516003918201558151808301835285815260208082018690526001600160a01b03881660009081529285019052919020815181906112c09082613824565b50602082015160018201906112d59082613824565b50505050505050505050565b60006112eb610ead565b54905060008290036113105760405163b562e8dd60e01b815260040160405180910390fd5b61131d6000848385611088565b680100000000000000018202611331610ead565b6001600160a01b038516600081815260059290920160205260409091208054929092019091554260a01b6001841460e11b171761136c610ead565b600083815260049190910160205260408120919091556001600160a01b0384169083830190839083907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4600183015b8181146113f657808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a46001016113be565b508160000361141757604051622e076360e81b815260040160405180910390fd5b80611420610ead565b55506109d8905060008483856110c7565b61143c8160016124a9565b7f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477046114678282613824565b507f8fe3adc25723aa6a0b7eb4b4bacf52e92165c180bde5353f7cf606fbf5591f2b816040516114979190613172565b60405180910390a150565b6060436114ad611bdc565b65ffffffffffff16146115025760405162461bcd60e51b815260206004820152601860248201527f566f7465733a2062726f6b656e20636c6f636b206d6f646500000000000000006044820152606401610a25565b5060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b6001600160a01b0390811660009081527f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f6560205260409020541690565b611580816124cd565b600080516020613a9e83398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f64c14256e532eac2ec90ddc4973ed2d3f5623faf7951d90eec38f9b7812f99a79181900360200190a15050565b60006115ec8361153a565b6001600160a01b0384811660008181527f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f65602052604080822080546001600160a01b031916888616908117909155905194955093928516927f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a46109d88183611676866124f4565b6124ff565b6116b46040518060c001604052806060815260200160608152602001600081526020016000815260200160608152602001606081525090565b6001600160a01b03821660009081527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe5747702602090815260408083207f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe574770390925291829020825160c0810190935281549192909181908490611732906137a8565b80601f016020809104026020016040519081016040528092919081815260200182805461175e906137a8565b80156117ab5780601f10611780576101008083540402835291602001916117ab565b820191906000526020600020905b81548152906001019060200180831161178e57829003601f168201915b505050505081526020018360010180546117c4906137a8565b80601f01602080910402602001604051908101604052809291908181526020018280546117f0906137a8565b801561183d5780601f106118125761010080835404028352916020019161183d565b820191906000526020600020905b81548152906001019060200180831161182057829003601f168201915b50505050508152602001836002015481526020018360030154815260200182600001805461186a906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611896906137a8565b80156118e35780601f106118b8576101008083540402835291602001916118e3565b820191906000526020600020905b8154815290600101906020018083116118c657829003601f168201915b505050505081526020018260010180546118fc906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611928906137a8565b80156119755780601f1061194a57610100808354040283529160200191611975565b820191906000526020600020905b81548152906001019060200180831161195857829003601f168201915b505050505081525092505050919050565b60006001600160a01b0382166119af576040516323d3ad8160e21b815260040160405180910390fd5b67ffffffffffffffff6119c0610ead565b6005016000846001600160a01b03166001600160a01b0316815260200190815260200160002054169050919050565b33611a056119fc8361167b565b60400151610aae565b6001600160a01b031614610a375760405163dbfcf17d60e01b815260040160405180910390fd5b611a378460026124a9565b611a428360016124a9565b6001600160a01b03851660009081527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe574770260205260409020600080516020613a9e8339815191529080611a948782613824565b5060018101611aa38682613824565b506001600160a01b0387166000908152600383016020526040902080611ac98682613824565b5060018101611ad88582613824565b506040516001600160a01b038916907f66da702131703ee5e745ecf2f5b98311caa00729edd55541baad49289fc42ed890600090a25050505050505050565b6060600080516020613abe83398151915261062b565b6060600080516020613abe833981519152610c6d565b6000611b4d611bdc565b65ffffffffffff168210611b9a5760405162461bcd60e51b81526020600482015260146024820152730566f7465733a20667574757265206c6f6f6b75760641b6044820152606401610a25565b611bcd611ba6836123c0565b7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67906123f5565b6001600160e01b031692915050565b600061071f43612680565b6001600160a01b0381166000908152600080516020613ade83398151915260205260408120611bcd906126b3565b80611c1e610ead565b336000818152600792909201602090815260408084206001600160a01b03881680865290835293819020805460ff19169515159590951790945592518415158152919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290611cc79033908990889088906004016138e4565b6020604051808303816000875af1925050508015611d02575060408051601f3d908101601f19168201909252611cff91810190613921565b60015b611d60573d808015611d30576040519150601f19603f3d011682016040523d82523d6000602084013e611d35565b606091505b508051600003611d58576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490505b949350505050565b83421115611dce5760405162461bcd60e51b815260206004820152601860248201527f566f7465733a207369676e6174757265206578706972656400000000000000006044820152606401610a25565b604080517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60208201526001600160a01b038816918101919091526060810186905260808101859052600090611e4890611e409060a001604051602081830303815290604052805190602001206126ec565b858585612719565b9050611e548187612747565b611e5e81886115e1565b50505050505050565b6000611e71610ead565b54821080156106c75750600160e01b611e88610ead565b60008481526004919091016020526040902054161592915050565b60008181527f7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477016020526040902054606090600080516020613a9e833981519152906001600160a01b031680611f0b5760405163af5f208f60e01b815260040160405180910390fd5b6001600160a01b03811660009081526002830160205260409020600181018054611f34906137a8565b159050611fd257806001018054611f4a906137a8565b80601f0160208091040260200160405190810160405280929190818152602001828054611f76906137a8565b8015611fc35780601f10611f9857610100808354040283529160200191611fc3565b820191906000526020600020905b815481529060010190602001808311611fa657829003601f168201915b50505050509350505050919050565b6000836004018054611fe3906137a8565b80601f016020809104026020016040519081016040528092919081815260200182805461200f906137a8565b801561205c5780601f106120315761010080835404028352916020019161205c565b820191906000526020600020905b81548152906001019060200180831161203f57829003601f168201915b505050505090506000815190508060000361208a5760405163cd251ac560e01b815260040160405180910390fd5b81600182038151811061209f5761209f61394b565b6020910101516001600160f81b031916602f60f81b146120f857816120cc856001600160a01b03166127b9565b6040516020016120dd929190613961565b60405160208183030381529060405295505050505050919050565b8161210b856001600160a01b03166127b9565b6040516020016120dd92919061399d565b61212c6380ac58cd60e01b612862565b61213c635b5e139f60e01b612862565b6107118282612940565b6060600080516020613a9e8339815191526004018054610639906137a8565b7f59b501c3653afc186af7d48dda36cf6732bd21629a6295693664240a6ef5200054600160201b900460ff166121ae57604051630ef4733760e31b815260040160405180910390fd5b6107118282612972565b60006121c2610ead565b6001600160a01b039384166000908152600791909101602090815260408083209490951682529290925250205460ff1690565b600061220083610aae565b9050811561223f57336001600160a01b0382161461223f5761222281336121b8565b61223f576040516367d9dca160e11b815260040160405180910390fd5b83612248610ead565b6000858152600691909101602052604080822080546001600160a01b0319166001600160a01b0394851617905551859287811692908516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a450505050565b6001600160a01b0383166122f0576122ed7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67612a046122e884612a10565b612a44565b50505b6001600160a01b0382166123315761232e7f423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f67612a8d6122e884612a10565b50505b6109d861233d8461153a565b6123468461153a565b836124ff565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f612377612a99565b61237f612aff565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b600063ffffffff8211156123f1576040516306dfcc6560e41b81526020600482015260248101839052604401610a25565b5090565b81546000908181600581111561245257600061241084612b4f565b61241a90856139e2565b60008881526020902090915081015463ffffffff908116908716101561244257809150612450565b61244d8160016139f5565b92505b505b600061246087878585612c37565b9050801561249b57612485876124776001846139e2565b600091825260209091200190565b54600160201b90046001600160e01b031661249e565b60005b979650505050505050565b815182908211156109d8576040516374eb20a760e01b815260040160405180910390fd5b6001600160a01b038116610a37576040516302e47d1560e41b815260040160405180910390fd5b60006106c782610afb565b816001600160a01b0316836001600160a01b0316141580156125215750600081115b156109d8576001600160a01b038316156125d1576001600160a01b0383166000908152600080516020613ade83398151915260205260408120819061256c90612a8d6122e886612a10565b6001600160e01b031691506001600160e01b03169150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516125c6929190918252602082015260400190565b60405180910390a250505b6001600160a01b038216156109d8576001600160a01b0382166000908152600080516020613ade83398151915260205260408120819061261790612a046122e886612a10565b6001600160e01b031691506001600160e01b03169150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051612671929190918252602082015260400190565b60405180910390a25050505050565b600065ffffffffffff8211156123f1576040516306dfcc6560e41b81526030600482015260248101839052604401610a25565b805460009080156126e3576126cd836124776001846139e2565b54600160201b90046001600160e01b031661094a565b60009392505050565b60006106c76126f96110d2565b8360405161190160f01b8152600281019290925260228201526042902090565b60008060008061272b88888888612c95565b92509250925061273b8282612d64565b50909695505050505050565b6001600160a01b03821660009081527fda5d6d87446d81938877f0ee239dac391146dd7466ea30567f72becf06773c00602052604090208054600181019091558181146109d8576040516301d4b62360e61b81526001600160a01b038416600482015260248101829052604401610a25565b60606127c482612e1d565b6028602282019081209192507f4040404040404040404040404040404040404040404040404040404040404040917f888888888888888888888888888888888888888888888888888888888888888016601160f31b60005b82811a82028180015260018101906012190161281c57505050818151166000511660011c8151188152602081019050818151166020511660011c81511881525050919050565b6001600160e01b0319811660009081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00602052604090205460ff1615156001146128ef576001600160e01b0319811660009081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b0060205260409020805460ff19166001179055612908565b604051637967f77d60e11b815260040160405180910390fd5b6040516001600160e01b03198216907f78f84e5b1c5c05be2b5ad3800781dd404d6d6c6302bc755c0fe20f58a33a7f2290600090a250565b600061294a610ead565b90506002810161295a8482613824565b50600381016129698382613824565b50600090555050565b7f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336e61299d8382613824565b507f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336f6129c98282613824565b50506000600080516020613abe8339815191528190557f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d5550565b600061094a8284613a08565b60006001600160e01b038211156123f1576040516306dfcc6560e41b815260e0600482015260248101839052604401610a25565b600080612a80612a62612a55611bdc565b65ffffffffffff166123c0565b612a78612a6e886126b3565b868863ffffffff16565b879190612e41565b915091505b935093915050565b600061094a8284613a2f565b600080612aa4611b17565b805190915015612abb578051602090910120919050565b600080516020613abe833981519152548015612ad75792915050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4709250505090565b600080612b0a611b2d565b805190915015612b21578051602090910120919050565b7f3a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336d548015612ad75792915050565b600081600003612b6157506000919050565b60006001612b6e84612e4f565b901c6001901b90506001818481612b8757612b87613a4f565b048201901c90506001818481612b9f57612b9f613a4f565b048201901c90506001818481612bb757612bb7613a4f565b048201901c90506001818481612bcf57612bcf613a4f565b048201901c90506001818481612be757612be7613a4f565b048201901c90506001818481612bff57612bff613a4f565b048201901c90506001818481612c1757612c17613a4f565b048201901c905061094a81828581612c3157612c31613a4f565b04612ee3565b60005b81831015612c8d576000612c4e8484612ef9565b60008781526020902090915063ffffffff86169082015463ffffffff161115612c7957809250612c87565b612c848160016139f5565b93505b50612c3a565b509392505050565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115612cd05750600091506003905082612d5a565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015612d24573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612d5057506000925060019150829050612d5a565b9250600091508190505b9450945094915050565b6000826003811115612d7857612d78613a65565b03612d81575050565b6001826003811115612d9557612d95613a65565b03612db35760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115612dc757612dc7613a65565b03612de85760405163fce698f760e01b815260048101829052602401610a25565b6003826003811115612dfc57612dfc613a65565b03610711576040516335e2f38360e21b815260048101829052602401610a25565b6060612e2882612f14565b8051613078825260020160011990910190815292915050565b600080612a80858585612f83565b600080608083901c15612e6457608092831c92015b604083901c15612e7657604092831c92015b602083901c15612e8857602092831c92015b601083901c15612e9a57601092831c92015b600883901c15612eac57600892831c92015b600483901c15612ebe57600492831c92015b600283901c15612ed057600292831c92015b600183901c156106c75760010192915050565b6000818310612ef2578161094a565b5090919050565b6000612f086002848418613a7b565b61094a908484166139f5565b60606040519050608081016040526f30313233343536373839616263646566600f526002810190506028815260208101600060288201528260601b925060005b808101820184821a600f81165160018301538060041c5182535050600181019060121901612f54575050919050565b8254600090819080156130c9576000612fa1876124776001856139e2565b60408051808201909152905463ffffffff808216808452600160201b9092046001600160e01b0316602084015291925090871610156130225760405162461bcd60e51b815260206004820152601b60248201527f436865636b706f696e743a2064656372656173696e67206b65797300000000006044820152606401610a25565b805163ffffffff80881691160361306a5784613043886124776001866139e2565b80546001600160e01b0392909216600160201b0263ffffffff9092169190911790556130b9565b6040805180820190915263ffffffff80881682526001600160e01b0380881660208085019182528b54600181018d5560008d81529190912094519151909216600160201b029216919091179101555b602001519250839150612a859050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a5560008a815291822095519251909316600160201b029190931617920191909155905081612a85565b60005b8381101561313d578181015183820152602001613125565b50506000910152565b6000815180845261315e816020860160208601613122565b601f01601f19169290920160200192915050565b60208152600061094a6020830184613146565b60006020828403121561319757600080fd5b5035919050565b80356001600160a01b03811681146131b557600080fd5b919050565b600080604083850312156131cd57600080fd5b6131d68361319e565b946020939093013593505050565b6000806000606084860312156131f957600080fd5b6132028461319e565b92506132106020850161319e565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b600067ffffffffffffffff8084111561325157613251613220565b604051601f8501601f19908116603f0116810190828211818310171561327957613279613220565b8160405280935085815286868601111561329257600080fd5b858560208301376000602087830101525050509392505050565b600082601f8301126132bd57600080fd5b61094a83833560208501613236565b600080600080600060a086880312156132e457600080fd5b853567ffffffffffffffff808211156132fc57600080fd5b61330889838a016132ac565b9650602088013591508082111561331e57600080fd5b61332a89838a016132ac565b95506133386040890161319e565b9450606088013591508082111561334e57600080fd5b61335a89838a016132ac565b9350608088013591508082111561337057600080fd5b5061337d888289016132ac565b9150509295509295909350565b60006020828403121561339c57600080fd5b813567ffffffffffffffff8111156133b357600080fd5b611d76848285016132ac565b6000602082840312156133d157600080fd5b61094a8261319e565b602081526000825160c060208401526133f660e0840182613146565b90506020840151601f19808584030160408601526134148383613146565b9250604086015160608601526060860151608086015260808601519150808584030160a08601526134458383613146565b925060a08601519150808584030160c0860152506134638282613146565b95945050505050565b600080600080600060a0868803121561348457600080fd5b61348d8661319e565b9450602086013567ffffffffffffffff808211156134aa57600080fd5b6134b689838a016132ac565b955060408801359150808211156134cc57600080fd5b61333889838a016132ac565b60ff60f81b881681526000602060e060208401526134f960e084018a613146565b838103604085015261350b818a613146565b606085018990526001600160a01b038816608086015260a0850187905284810360c08601528551808252602080880193509091019060005b8181101561355f57835183529284019291840191600101613543565b50909c9b505050505050505050505050565b6000806040838503121561358457600080fd5b61358d8361319e565b9150602083013580151581146135a257600080fd5b809150509250929050565b600080600080608085870312156135c357600080fd5b6135cc8561319e565b93506135da6020860161319e565b925060408501359150606085013567ffffffffffffffff8111156135fd57600080fd5b8501601f8101871361360e57600080fd5b61361d87823560208401613236565b91505092959194509250565b60008060008060008060c0878903121561364257600080fd5b61364b8761319e565b95506020870135945060408701359350606087013560ff8116811461366f57600080fd5b9598949750929560808101359460a0909101359350915050565b6000806040838503121561369c57600080fd5b823567ffffffffffffffff808211156136b457600080fd5b6136c0868387016132ac565b935060208501359150808211156136d657600080fd5b506136e3858286016132ac565b9150509250929050565b60008060006060848603121561370257600080fd5b833567ffffffffffffffff8082111561371a57600080fd5b613726878388016132ac565b9450602086013591508082111561373c57600080fd5b613748878388016132ac565b9350604086013591508082111561375e57600080fd5b5061376b868287016132ac565b9150509250925092565b6000806040838503121561378857600080fd5b6137918361319e565b915061379f6020840161319e565b90509250929050565b600181811c908216806137bc57607f821691505b60208210810361104057634e487b7160e01b600052602260045260246000fd5b601f8211156109d8576000816000526020600020601f850160051c810160208610156138055750805b601f850160051c820191505b8181101561092c57828155600101613811565b815167ffffffffffffffff81111561383e5761383e613220565b6138528161384c84546137a8565b846137dc565b602080601f831160018114613887576000841561386f5750858301515b600019600386901b1c1916600185901b17855561092c565b600085815260208120601f198616915b828110156138b657888601518255948401946001909101908401613897565b50858210156138d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061391790830184613146565b9695505050505050565b60006020828403121561393357600080fd5b81516001600160e01b03198116811461094a57600080fd5b634e487b7160e01b600052603260045260246000fd5b60008351613973818460208801613122565b602f60f81b9083019081528351613991816001840160208801613122565b01600101949350505050565b600083516139af818460208801613122565b8351908301906139c3818360208801613122565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156106c7576106c76139cc565b808201808211156106c7576106c76139cc565b6001600160e01b03818116838216019080821115613a2857613a286139cc565b5092915050565b6001600160e01b03828116828216039080821115613a2857613a286139cc565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b600082613a9857634e487b7160e01b600052601260045260246000fd5b50049056fe7fc24c9500f4388b797f8975c0991ad4ffd0338c2cbf5335b2bf5b7fe57477003a497e775dc7c283402f0d3c39c5f0ea53870eb15ab2dddfde5a1162a84c336c423fcc3514229d79a30fb79b40a232f70b3fabdf664a75db0859c67848497f66","sourceMap":"586:4577:220:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:116:124;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3498:132;;;;;;;;;;-1:-1:-1;3498:132:124;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;1119:32:403;;;1101:51;;1089:2;1074:18;3498:132:124;955:203:403;3496:266:220;;;;;;:::i;:::-;;:::i;:::-;;1503:93:124;;;;;;;;;;;;;:::i;:::-;;;1746:25:403;;;1734:2;1719:18;1503:93:124;1600:177:403;4893:2680:124;;;;;;:::i;:::-;;:::i;2586:105:220:-;;;;;;;;;;;;;:::i;650:159:77:-;;;;;;;;;;-1:-1:-1;650:159:77;;;;;:::i;:::-;;:::i;1670:346:220:-;;;;;;;;;;-1:-1:-1;1670:346:220;;;;;:::i;:::-;;:::i;7656:167:124:-;;;;;;:::i;:::-;;:::i;2895:91:220:-;;;;;;;;;;-1:-1:-1;2895:91:220;;;;;:::i;:::-;;:::i;387:96:77:-;;;;;;;;;;;;;:::i;1008:111::-;;;;;;;;;;-1:-1:-1;1008:111:77;;;;;:::i;:::-;;:::i;1137:87:220:-;;;;;;;;;;-1:-1:-1;1137:87:220;;;;;:::i;:::-;;:::i;1148:95:77:-;;;;;;;;;;-1:-1:-1;1148:95:77;;;;;:::i;:::-;;:::i;2867:152:124:-;;;;;;;;;;-1:-1:-1;2867:152:124;;;;;:::i;:::-;;:::i;2050:108:220:-;;;;;;;;;;-1:-1:-1;2050:108:220;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1673:107:124:-;;;;;;;;;;-1:-1:-1;1673:107:124;;;;;:::i;:::-;;:::i;1549:87:220:-;;;;;;;;;;;;;:::i;2475:107::-;;;;;;;;;;-1:-1:-1;2475:107:220;;;;;:::i;:::-;;:::i;2192:279::-;;;;;;;;;;-1:-1:-1;2192:279:220;;;;;:::i;:::-;;:::i;4514:801:143:-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;1258:85:220:-;;;;;;;;;;;;;:::i;838:141:77:-;;;;;;;;;;-1:-1:-1;838:141:77;;;;;:::i;:::-;;:::i;276:80::-;;;;;;;;;;;;;:::i;:::-;;;8345:14:403;8333:27;;;8315:46;;8303:2;8288:18;276:80:77;8171:196:403;2199:120:124;;;;;;;;;;;;;:::i;512:109:77:-;;;;;;;;;;-1:-1:-1;512:109:77;;;;;:::i;:::-;;:::i;3766:281:220:-;;;;;;;;;;-1:-1:-1;3766:281:220;;;;;:::i;:::-;;:::i;8372:348:124:-;;;;;;:::i;:::-;;:::i;1272:214:77:-;;;;;;;;;;-1:-1:-1;1272:214:77;;;;;:::i;:::-;;:::i;3121:196:220:-;;;;;;;;;;-1:-1:-1;3121:196:220;;;;;:::i;:::-;;:::i;869:157:124:-;;;;;;;;;;-1:-1:-1;869:157:124;;;;;:::i;:::-;;:::i;3020:97:220:-;;;;;;;;;;;;;:::i;717:212::-;;;;;;;;;;-1:-1:-1;717:212:220;;;;;:::i;:::-;;:::i;4340:167:124:-;;;;;;;;;;-1:-1:-1;4340:167:124;;;;;:::i;:::-;;:::i;:::-;;;11745:14:403;;11738:22;11720:41;;11708:2;11693:18;4340:167:124;11580:187:403;2020:116:124;2074:13;2102:23;:21;:23::i;:::-;:29;;2095:36;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:116;:::o;3498:132::-;3582:7;3604:21;3617:7;3604:12;:21::i;:::-;3597:28;3498:132;-1:-1:-1;;3498:132:124:o;3496:266:220:-;-1:-1:-1;;;;;3636:16:220;;;;;;:48;;;3656:28;3673:10;3656:16;:28::i;:::-;3632:93;;;3701:17;;-1:-1:-1;;;3701:17:220;;;;;;;;;;;3632:93;3731:26;3745:2;3749:7;3731:13;:26::i;:::-;3496:266;;:::o;1503:93:124:-;1555:7;1577:14;:12;:14::i;:::-;1570:21;;1503:93;:::o;4893:2680::-;5012:27;5042;5061:7;5042:18;:27::i;:::-;5012:57;;5121:4;-1:-1:-1;;;;;5080:45:124;5096:19;-1:-1:-1;;;;;5080:45:124;;5076:92;;5140:28;;-1:-1:-1;;;5140:28:124;;;;;;;;;;;5076:92;5183:27;5218:23;5250:35;5277:7;5250:26;:35::i;:::-;5175:110;;;;5374:68;5399:15;5416:4;5422:19;29364:10:125;;29282:97;5422:19:124;-1:-1:-1;;;;;11870:32:125;;;11728:28;;11985:20;;12007:30;;11982:56;;11461:587;5374:68:124;5369:181;;5455:43;5472:4;29364:10:125;4340:167:124;:::i;5455:43::-;5450:100;;5515:35;;-1:-1:-1;;;5515:35:124;;;;;;;;;;;5450:100;-1:-1:-1;;;;;5561:16:124;;5557:52;;5586:23;;-1:-1:-1;;;5586:23:124;;;;;;;;;;;5557:52;5616:43;5638:4;5644:2;5648:7;5657:1;5616:21;:43::i;:::-;5734:15;5731:135;;;5856:1;5835:19;5828:30;5731:135;6206:23;:21;:23::i;:::-;-1:-1:-1;;;;;6206:48:124;;;;;;:42;;;;;:48;;;;;6204:50;;-1:-1:-1;;6204:50:124;;;6292:23;:21;:23::i;:::-;-1:-1:-1;;;;;6292:46:124;;;;;;:42;;;;;:46;;;;;;6290:48;;;;;;10229:11:125;10204:23;10200:41;10187:63;-1:-1:-1;;;10187:63:125;6566:23:124;:21;:23::i;:::-;:50;;;;:41;;;;;:50;;;;;:184;;;;-1:-1:-1;;;6855:47:124;;:52;;6851:625;;6951:1;6941:11;;7056:23;:21;:23::i;:::-;:54;;;;:41;;;;;:54;;;;;;:59;;7052:416;;7196:23;:21;:23::i;:::-;:37;7181:52;;7177:281;;7426:19;7341:23;:21;:23::i;:::-;:82;;;;:41;;;;;:82;;;;;:104;7177:281;6909:567;6851:625;7512:7;7508:2;-1:-1:-1;;;;;7493:27:124;7502:4;-1:-1:-1;;;;;7493:27:124;;;;;;;;;;;7526:42;7547:4;7553:2;7557:7;7566:1;7526:20;:42::i;:::-;5006:2567;;;4893:2680;;;:::o;2586:105:220:-;2637:14;2666:20;:18;:20::i;650:159:77:-;749:7;771:33;785:7;794:9;771:13;:33::i;:::-;764:40;650:159;-1:-1:-1;;;650:159:77:o;1670:346:220:-;1860:15;;-1:-1:-1;;;;;;;;;;;618:10:221;;;;-1:-1:-1;;;;;;618:10:221;604;:24;600:84;;645:32;;-1:-1:-1;;;645:32:221;;;;;;;;;;;600:84;1893:14:220::1;:12;:14::i;:::-;1883:24;;1913:72;1924:4;1930:3;1935:7;1944:5;1951:16;1969:15;1913:10;:72::i;:::-;1991:20;1997:10;2009:1;1991:5;:20::i;:::-;524:171:221::0;1670:346:220;;;;;;;:::o;7656:167:124:-;7779:39;7796:4;7802:2;7806:7;7779:39;;;;;;;;;;;;:16;:39::i;:::-;7656:167;;;:::o;2895:91:220:-;284:66:97;438:29:95;-1:-1:-1;;;;;438:29:95;279:10;:22;275:79;;318:29;;-1:-1:-1;;;318:29:95;;336:10;318:29;;;1101:51:403;1074:18;;318:29:95;;;;;;;;275:79;2962:19:220::1;2977:3;2962:14;:19::i;:::-;2895:91:::0;:::o;387:96:77:-;438:13;466:12;:10;:12::i;1008:111::-;1073:7;1095:19;1106:7;1095:10;:19::i;1137:87:220:-;284:66:97;438:29:95;-1:-1:-1;;;;;438:29:95;279:10;:22;275:79;;318:29;;-1:-1:-1;;;318:29:95;;336:10;318:29;;;1101:51:403;1074:18;;318:29:95;955:203:403;275:79:95;1199:20:220::1;1211:7;1199:11;:20::i;1148:95:77:-:0;1206:32;1216:10;1228:9;1206;:32::i;2867:152:124:-;2947:7;2985:27;3004:7;2985:18;:27::i;2050:108:220:-;2110:12;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2110:12:220;2137:16;2147:5;2137:9;:16::i;1673:107:124:-;1736:7;1758:17;1769:5;1758:10;:17::i;1549:87:220:-;1595:7;1617:14;:12;:14::i;2475:107::-;-1:-1:-1;;;;;526:37:142;;2529:14:220;526:37:142;;;1554:66;526:37;;;;;;2558:19:220;436:132:142;2192:279:220;2373:22;2389:5;2373:15;:22::i;:::-;2401:65;2414:5;2421:4;2427:3;2432:16;2450:15;2401:12;:65::i;:::-;2192:279;;;;;:::o;4514:801:143:-;4603:13;4624:18;;4603:13;;;4624:18;-1:-1:-1;;;;;;;;;;;5007:34:143;:39;:93;;;;-1:-1:-1;5058:37:143;;:42;5007:93;4992:145;;;;-1:-1:-1;;;4992:145:143;;12359:2:403;4992:145:143;;;12341:21:403;12398:2;12378:18;;;12371:30;-1:-1:-1;;;12417:18:403;;;12410:51;12478:18;;4992:145:143;12157:345:403;4992:145:143;5183:13;:11;:13::i;:::-;5204:16;:14;:16::i;:::-;5288;;;5278:1;5288:16;;;;;;;;;-1:-1:-1;;;5144:166:143;;;-1:-1:-1;5144:166:143;;-1:-1:-1;5228:13:143;;-1:-1:-1;5257:4:143;;-1:-1:-1;5278:1:143;-1:-1:-1;5288:16:143;-1:-1:-1;5144:166:143;-1:-1:-1;4514:801:143:o;1258:85:220:-;1303:7;1325:13;-1:-1:-1;;;;;;;;;;;1069:10:221;-1:-1:-1;;;;;1069:10:221;;931:153;838:141:77;922:7;944:30;964:9;944:19;:30::i;276:80::-;322:6;343:8;:6;:8::i;2199:120:124:-;2255:13;2283:23;:21;:23::i;:::-;:31;;2276:38;;;;;:::i;512:109:77:-;576:7;598:18;608:7;598:9;:18::i;3766:281:220:-;3912:8;:40;;;;;3924:28;3941:10;3924:16;:28::i;:::-;3908:85;;;3969:17;;-1:-1:-1;;;3969:17:220;;;;;;;;;;;3908:85;3999:43;4023:8;4033;3999:23;:43::i;8372:348:124:-;8519:31;8532:4;8538:2;8542:7;8519:12;:31::i;:::-;-1:-1:-1;;;;;8560:14:124;;;:19;8556:160;;8592:56;8623:4;8629:2;8633:7;8642:5;8592:30;:56::i;:::-;8587:129;;8667:40;;-1:-1:-1;;;8667:40:124;;;;;;;;;;;8587:129;8372:348;;;;:::o;1272:214:77:-;1432:49;1447:9;1458:5;1465:6;1473:1;1476;1479;1432:14;:49::i;3121:196:220:-;3202:13;3228:16;3236:7;3228;:16::i;:::-;3223:59;;3253:29;;-1:-1:-1;;;3253:29:220;;;;;;;;;;;3223:59;3296:16;3304:7;3296;:16::i;869:157:124:-;296:66:84;1263:42:83;-1:-1:-1;;;1263:42:83;;;;1258:100;;1320:38;;-1:-1:-1;;;1320:38:83;;;;;;;;;;;1258:100;981:40:124::1;1006:5;1013:7;981:24;:40::i;3020:97:220:-:0;3068:13;3096:16;:14;:16::i;717:212::-;296:66:84;540:14:83;;-1:-1:-1;;;540:14:83;;;;539:15;;564:53;;2049:4;2041:25;:30;;564:53;;;581:9;;594:1;581:9;;;;:14;;564:53;560:124;;;667:9;;634:43;;-1:-1:-1;;;634:43:83;;667:9;;;;634:43;;;12651:42:403;12624:18;;634:43:83;12507:192:403;560:124:83;689:13;;-1:-1:-1;;689:13:83;701:1;689:13;;;708:56;;;;736:21;;-1:-1:-1;;736:21:83;-1:-1:-1;;;736:21:83;;;708:56;852:38:220::1;877:4;883:6;852:24;:38::i;:::-;896:28;910:4;916:7;896:13;:28::i;:::-;780:14:83::0;776:84;;;804:22;;-1:-1:-1;;804:22:83;;;839:14;;-1:-1:-1;12651:42:403;;839:14:83;;12639:2:403;12624:18;839:14:83;;;;;;;435:429;;717:212:220;;;:::o;4340:167:124:-;4449:4;4468:34;4486:5;4493:8;4468:17;:34::i;1689:139:127:-;293:66;;1689:139::o;22504:230:125:-;22582:7;22602:16;22610:7;22602;:16::i;:::-;22597:64;;22627:34;;-1:-1:-1;;;22627:34:125;;;;;;;;;;;22597:64;22675:23;:21;:23::i;:::-;:48;;;;:39;;:48;;-1:-1:-1;22675:48:125;;;:54;-1:-1:-1;;;;;22675:54:125;;22504:230::o;1755:435:202:-;1822:4;280:66:204;-1:-1:-1;;;;;2053:20:202;;;:25;:132;;;;-1:-1:-1;;;;;;2089:30:202;;;;;;:20;;;:30;;;;;;:35;;:95;;-1:-1:-1;;;;;;2154:30:202;;;;;;:20;;;:30;;;;;;2136:15;:48;2040:145;1755:435;-1:-1:-1;;;1755:435:202:o;3236:128:124:-;3332:27;3341:2;3345:7;3354:4;3332:8;:27::i;2978:351:125:-;3025:7;;3256:23;:21;:23::i;:::-;:36;;;3208:23;:21;:23::i;:::-;:37;:84;:110;;2978:351;-1:-1:-1;2978:351:125:o;7829:1501::-;7905:14;7967:32;8002:23;:21;:23::i;:::-;8043:29;;;;:20;;;:29;;;;;;;-1:-1:-1;7967:58:125;;-1:-1:-1;;;;8108:24:125;;:29;;8104:1172;;8229:6;8239:1;8229:11;8225:791;;8269:16;;8258:27;;8254:83;;8306:31;;-1:-1:-1;;;8306:31:125;;;;;;;;;;;8254:83;8824:182;-1:-1:-1;;8903:9:125;;;8882:31;;;;:20;;;:31;;;;;;8903:9;;8882:31;;-1:-1:-1;8941:25:125;;8824:182;8941:25;;8980:13;7829:1501;;;:::o;8104:1172::-;7959:1323;9294:31;;-1:-1:-1;;;9294:31:125;;;;;;;;;;;12148:478;12244:27;12273:23;12306:38;12347:30;:28;:30::i;:::-;:62;;;;:53;;:62;;-1:-1:-1;;12347:62:125;;;;12590:26;;12347:62;;12590:26;;-1:-1:-1;12148:478:125:o;4051:352:220:-;-1:-1:-1;;;;;4196:18:220;;;;;;:44;;;4218:22;4235:4;4218:16;:22::i;:::-;4192:139;;;4307:17;;-1:-1:-1;;;4307:17:220;;;;;;;;;;;4192:139;4337:61;8372:348:124;4407:262:220;4556:41;4577:4;4583:2;4587:9;4556:20;:41::i;3292:103:143:-;3345:7;3367:23;:21;:23::i;3995:301:78:-;4089:7;4124:8;:6;:8::i;:::-;4112:20;;:9;:20;4104:53;;;;-1:-1:-1;;;4104:53:78;;13112:2:403;4104:53:78;;;13094:21:403;13151:2;13131:18;;;13124:30;-1:-1:-1;;;13170:18:403;;;13163:50;13230:18;;4104:53:78;12910:344:403;4104:53:78;4176:115;4255:28;4273:9;4255:17;:28::i;:::-;-1:-1:-1;;;;;4176:51:78;;;;;;-1:-1:-1;;;;;;;;;;;4176:51:78;;;;;;:69;:115::i;:::-;-1:-1:-1;;;;;4163:128:78;;3995:301;-1:-1:-1;;;3995:301:78:o;4035:119:125:-;4090:7;4112:23;:21;:23::i;:::-;:37;;4035:119;-1:-1:-1;4035:119:125:o;1260:723:221:-;1457:30;1479:4;1485:1;1457:21;:30::i;:::-;1493:29;1515:3;1520:1;1493:21;:29::i;:::-;1528;1551:5;1528:22;:29::i;:::-;1564:35;1635:26;;;:17;:26;;;;;;;;:34;;-1:-1:-1;;;;;;1635:34:221;-1:-1:-1;;;;;1635:34:221;;;;;;;;1702:123;;;;;;;;;;;;;;;;;;;;;;1803:15;1702:123;;;;1675:24;;;:17;:24;;;;;;:150;;-1:-1:-1;;;;;;;;;;;847:12:222;1702:123:221;1675:24;;;:150;;:24;:150;:::i;:::-;-1:-1:-1;1675:150:221;;;;;;;;;;;;:::i;:::-;-1:-1:-1;1675:150:221;;;;;;;;;;;;;;;;;;;1857:121;;;;;;;;;;-1:-1:-1;1857:121:221;;;;;;-1:-1:-1;;;;;1831:23:221;;-1:-1:-1;1831:23:221;;;:16;;;:23;;;;;:147;;:23;;:147;;:23;:147;:::i;:::-;-1:-1:-1;1831:147:221;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;;;;;1260:723:221:o;15799:2642:125:-;15867:20;15890:23;:21;:23::i;:::-;:37;;-1:-1:-1;15890:37:125;15937:13;;;15933:44;;15959:18;;-1:-1:-1;;;15959:18:125;;;;;;;;;;;15933:44;15984:61;16014:1;16018:2;16022:12;16036:8;15984:21;:61::i;:::-;16474:32;16454:53;;16396:23;:21;:23::i;:::-;-1:-1:-1;;;;;16396:46:125;;;;;;:42;;;;;:46;;;;;;:111;;;;;;;;;10229:11;10204:23;10200:41;-1:-1:-1;10624:15:125;;10598:24;10594:46;10197:52;10187:63;16707:23;:21;:23::i;:::-;:71;;;;:41;;;;;:71;;;;;:188;;;;-1:-1:-1;;;;;17416:25:125;;;16942:23;;;;16758:12;;17416:25;;17602;16707:71;;17488:260;18026:1;18012:12;18008:20;17977:275;18058:3;18049:7;18046:16;17977:275;;18234:7;18224:8;18221:1;18194:25;18191:1;18188;18183:59;18100:1;18087:15;17977:275;;;17981:57;18271:8;18283:1;18271:13;18267:45;;18293:19;;-1:-1:-1;;;18293:19:125;;;;;;;;;;;18267:45;18361:3;18321:23;:21;:23::i;:::-;:43;-1:-1:-1;18376:60:125;;-1:-1:-1;18321:37:125;18409:2;18413:12;18427:8;18376:20;:60::i;481:183:223:-;539:29;561:3;566:1;539:21;:29::i;:::-;575:37;:43;615:3;575:37;:43;:::i;:::-;;629:30;655:3;629:30;;;;;;:::i;:::-;;;;;;;;481:183;:::o;3007:221:78:-;3052:13;3138:12;3126:8;:6;:8::i;:::-;:24;;;3118:61;;;;-1:-1:-1;;;3118:61:78;;15656:2:403;3118:61:78;;;15638:21:403;15695:2;15675:18;;;15668:30;15734:26;15714:18;;;15707:54;15778:18;;3118:61:78;15454:348:403;3118:61:78;-1:-1:-1;3185:38:78;;;;;;;;;;;;;;;;;;3007:221::o;5254:129::-;-1:-1:-1;;;;;5336:42:78;;;5314:7;5336:42;;;219:52:79;5336:42:78;;;;;;;;5254:129::o;699:228:221:-;752:31;775:7;752:22;:31::i;:::-;-1:-1:-1;;;;;;;;;;;860:20:221;;-1:-1:-1;;;;;860:20:221;;-1:-1:-1;;;;;;860:20:221;;;;;;;891:31;;;1101:51:403;;;891:31:221;;;;;;1089:2:403;891:31:221;;;746:181;699:228;:::o;6612:401:78:-;6732:19;6754;6765:7;6754:10;:19::i;:::-;-1:-1:-1;;;;;6779:42:78;;;:33;:42;;;219:52:79;6779:42:78;;;;;;:54;;-1:-1:-1;;;;;;6779:54:78;;;;;;;;;;6845:48;;6732:41;;-1:-1:-1;6779:54:78;6845:48;;;;;;6779:33;6845:48;6899:68;6918:11;6931:9;6942:24;6958:7;6942:15;:24::i;:::-;6899:18;:68::i;2658:580:221:-;2715:12;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2715:12:221;-1:-1:-1;;;;;2779:62:221;;2735:41;2779:62;;;:55;:62;;;;;;;;2899:54;:61;;;;;;;2980:253;;;;;;;;;;2779:62;;2899:61;;2980:253;;2779:62;;2980:253;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3031:9;:13;;2980:253;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3063:9;:17;;;2980:253;;;;3101:9;:19;;;2980:253;;;;3148:8;:25;;2980:253;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3200:8;:24;;2980:253;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2967:266;;;;2658:580;;;:::o;3333:242:125:-;3391:7;-1:-1:-1;;;;;3410:19:125;;3406:60;;3438:28;;-1:-1:-1;;;3438:28:125;;;;;;;;;;;3406:60;564:13;3485:23;:21;:23::i;:::-;:42;;:49;3528:5;-1:-1:-1;;;;;3485:49:125;-1:-1:-1;;;;;3485:49:125;;;;;;;;;;;;;:85;3472:98;;3333:242;;;:::o;4986:175:220:-;5088:10;5050:34;5059:16;5069:5;5059:9;:16::i;:::-;:24;;;5050:8;:34::i;:::-;-1:-1:-1;;;;;5050:48:220;;5046:111;;5115:35;;-1:-1:-1;;;5115:35:220;;;;;;;;;;;1987:667:221;2165:30;2187:4;2193:1;2165:21;:30::i;:::-;2201:29;2223:3;2228:1;2201:21;:29::i;:::-;-1:-1:-1;;;;;2352:24:221;;2237:35;2352:24;;;:17;:24;;;;;-1:-1:-1;;;;;;;;;;;847:12:222;2352:24:221;2382:21;2399:4;2352:24;2382:21;:::i;:::-;-1:-1:-1;2409:13:221;;;:19;2425:3;2409:13;:19;:::i;:::-;-1:-1:-1;;;;;;2486:23:221;;2435:48;2486:23;;;:16;;;:23;;;;;;2515:44;2543:16;2486:23;2515:44;:::i;:::-;-1:-1:-1;2565:24:221;;;:42;2592:15;2565:24;:42;:::i;:::-;-1:-1:-1;2619:30:221;;-1:-1:-1;;;;;2619:30:221;;;;;;;;2159:495;;;1987:667;;;;;:::o;5525:115:143:-;5579:13;-1:-1:-1;;;;;;;;;;;5607:22:143;7824:139;5853:121;5910:13;-1:-1:-1;;;;;;;;;;;5938:22:143;7824:139;4906:274:78;4985:7;5020:8;:6;:8::i;:::-;5008:20;;:9;:20;5000:53;;;;-1:-1:-1;;;5000:53:78;;13112:2:403;5000:53:78;;;13094:21:403;13151:2;13131:18;;;13124:30;-1:-1:-1;;;13170:18:403;;;13163:50;13230:18;;5000:53:78;12910:344:403;5000:53:78;5072:103;5139:28;5157:9;5139:17;:28::i;:::-;5072:39;;:57;:103::i;:::-;-1:-1:-1;;;;;5059:116:78;;4906:274;-1:-1:-1;;4906:274:78:o;2764:98::-;2805:6;2826:31;2844:12;2826:17;:31::i;3482:146::-;-1:-1:-1;;;;;3563:51:78;;3541:7;3563:51;;;-1:-1:-1;;;;;;;;;;;3563:51:78;;;;;:60;;:58;:60::i;3933:269:124:-;4123:8;4035:23;:21;:23::i;:::-;29364:10:125;4035:63:124;;;;:42;;;;;:63;;;;;;;;-1:-1:-1;;;;;4035:85:124;;;;;;;;;;;;:96;;-1:-1:-1;;4035:96:124;;;;;;;;;;;4142:55;;11745:14:403;;11738:22;11720:41;;4035:85:124;;29364:10:125;;4142:55:124;;11693:18:403;4142:55:124;;;;;;;3933:269;;:::o;14707:674:125:-;14870:139;;-1:-1:-1;;;14870:139:125;;14848:4;;-1:-1:-1;;;;;14870:56:125;;;;;:139;;29364:10;;14965:4;;14979:7;;14996:5;;14870:139;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14870:139:125;;;;;;;;-1:-1:-1;;14870:139:125;;;;;;;;;;;;:::i;:::-;;;14860:517;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15192:6;:13;15209:1;15192:18;15188:183;;15229:40;;-1:-1:-1;;;15229:40:125;;;;;;;;;;;15188:183;15345:6;15339:13;15330:6;15326:2;15322:15;15315:38;14860:517;-1:-1:-1;;;;;;15061:83:125;-1:-1:-1;;;15061:83:125;;-1:-1:-1;14860:517:125;14707:674;;;;;;:::o;5453:467:78:-;5628:6;5609:15;:25;;5601:62;;;;-1:-1:-1;;;5601:62:78;;16798:2:403;5601:62:78;;;16780:21:403;16837:2;16817:18;;;16810:30;16876:26;16856:18;;;16849:54;16920:18;;5601:62:78;16596:348:403;5601:62:78;5743:58;;;2310:71;5743:58;;;17180:25:403;-1:-1:-1;;;;;17241:32:403;;17221:18;;;17214:60;;;;17290:18;;;17283:34;;;17333:18;;;17326:34;;;5669:14:78;;5686:157;;5707:103;;17152:19:403;;5743:58:78;;;;;;;;;;;;5733:69;;;;;;5707:16;:103::i;:::-;5818:1;5827;5836;5686:13;:157::i;:::-;5669:174;;5850:31;5867:6;5875:5;5850:16;:31::i;:::-;5887:28;5897:6;5905:9;5887;:28::i;:::-;5595:325;5453:467;;;;;;:::o;11064:301:125:-;11129:4;11200:23;:21;:23::i;:::-;:37;11190:47;;11154:187;;;;;-1:-1:-1;;;11268:23:125;:21;:23::i;:::-;:50;;;;:41;;;;;:50;;;;;;:68;:73;11141:200;11064:301;-1:-1:-1;;11064:301:125:o;860:940:223:-;954:35;1047:26;;;:17;:26;;;;;;933:13;;-1:-1:-1;;;;;;;;;;;847:12:222;-1:-1:-1;;;;;1047:26:223;;1080:66;;1119:27;;-1:-1:-1;;;1119:27:223;;;;;;;;;;;1080:66;-1:-1:-1;;;;;1193:31:223;;1153:37;1193:31;;;:17;;;:31;;;;;1286:9;;;1280:23;;;;;:::i;:::-;:28;;-1:-1:-1;1276:50:223;;1317:5;:9;;1310:16;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;860:940;;;:::o;1276:50::-;1333:24;1360:2;:13;;1333:40;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1380:14;1403:10;1397:24;1380:41;;1431:6;1441:1;1431:11;1427:54;;1451:30;;-1:-1:-1;;;1451:30:223;;;;;;;;;;;1427:54;1556:10;1577:1;1568:6;:10;1550:29;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;;;;;1550:29:223;-1:-1:-1;;;1550:37:223;1546:244;;1630:10;1647:37;:12;-1:-1:-1;;;;;1647:35:223;;:37::i;:::-;1616:69;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1599:86;;;;;;;860:940;;;:::o;1546:244::-;1731:10;1743:37;:12;-1:-1:-1;;;;;1743:35:223;;:37::i;:::-;1717:64;;;;;;;;;:::i;1030:282:124:-;1135:25;-1:-1:-1;;;1135:13:124;:25::i;:::-;1200;-1:-1:-1;;;1200:13:124;:25::i;:::-;1273:34;1292:5;1299:7;1273:18;:34::i;668:119:223:-;717:13;-1:-1:-1;;;;;;;;;;;745:37:223;;738:44;;;;;:::i;2725:153:143:-;296:66:84;1263:42:83;-1:-1:-1;;;1263:42:83;;;;1258:100;;1320:38;;-1:-1:-1;;;1320:38:83;;;;;;;;;;;1258:100;2835:38:143::1;2859:4;2865:7;2835:23;:38::i;22314:186:125:-:0;22417:4;22436:23;:21;:23::i;:::-;-1:-1:-1;;;;;22436:49:125;;;;;;;:42;;;;;:49;;;;;;;;:59;;;;;;;;;;-1:-1:-1;22436:59:125;;;;;22314:186::o;23284:439::-;23390:13;23406:17;23415:7;23406:8;:17::i;:::-;23390:33;;23434:13;23430:184;;;29364:10;-1:-1:-1;;;;;23459:28:125;;;23455:159;;23502:45;23520:5;29364:10;23502:17;:45::i;:::-;23497:117;;23568:35;;-1:-1:-1;;;23568:35:125;;;;;;;;;;;23497:117;23677:2;23620:23;:21;:23::i;:::-;:48;;;;:39;;;;;:48;;;;;;:59;;-1:-1:-1;;;;;;23620:59:125;-1:-1:-1;;;;;23620:59:125;;;;;;23690:28;23620:48;;23690:28;;;;;;;;;;23620:48;23690:28;23384:339;23284:439;;;:::o;7237:491:78:-;-1:-1:-1;;;;;7352:18:78;;7348:151;;7380:112;7395:39;7444:4;7458:26;7477:6;7458:18;:26::i;:::-;7380:5;:112::i;:::-;;;7348:151;-1:-1:-1;;;;;7508:16:78;;7504:154;;7534:117;7549:39;7598:9;7617:26;7636:6;7617:18;:26::i;7534:117::-;;;7504:154;7663:60;7682:16;7693:4;7682:10;:16::i;:::-;7700:14;7711:2;7700:10;:14::i;:::-;7716:6;7663:18;:60::i;3399:268:143:-;3454:7;2073:107;3545:17;:15;:17::i;:::-;3574:20;:18;:20::i;:::-;3501:153;;;;;;18897:25:403;;;;18938:18;;18931:34;;;;18981:18;;;18974:34;3606:13:143;19024:18:403;;;19017:34;3639:4:143;19067:19:403;;;19060:61;18869:19;;3501:153:143;;;;;;;;;;;;3482:180;;;;;;3469:193;;3399:268;:::o;15291:213:348:-;15347:6;15377:16;15369:24;;15365:103;;;15416:41;;-1:-1:-1;;;15416:41:348;;15447:2;15416:41;;;19313:36:403;19365:18;;;19358:34;;;19286:18;;15416:41:348;19132:266:403;15365:103:348;-1:-1:-1;15491:5:348;15291:213::o;8964:548:73:-;9090:24;;9061:7;;;9090:24;9177:1;9171:7;;9167:190;;;9188:11;9208:14;9218:3;9208:9;:14::i;:::-;9202:20;;:3;:20;:::i;:::-;13062:28;13115:20;;;13174:4;13161:18;;9188:34;;-1:-1:-1;13157:28:73;;9240:42;;;;;9234:48;;;;9230:121;;;9301:3;9294:10;;9230:121;;;9335:7;:3;9341:1;9335:7;:::i;:::-;9329:13;;9230:121;9180:177;9167:190;9363:11;9377:53;9396:4;9415:3;9420;9425:4;9377:18;:53::i;:::-;9363:67;-1:-1:-1;9444:8:73;;:63;;9459:41;9473:4;9492:7;9498:1;9492:3;:7;:::i;:::-;13062:28;13115:20;;;13174:4;13161:18;;;13157:28;;12962:233;9459:41;:48;-1:-1:-1;;;9459:48:73;;-1:-1:-1;;;;;9459:48:73;9444:63;;;9455:1;9444:63;9437:70;8964:548;-1:-1:-1;;;;;;;8964:548:73:o;418:183:255:-;534:15;;519:4;;534:21;-1:-1:-1;530:66:255;;;564:32;;-1:-1:-1;;;564:32:255;;;;;;;;;;;737:119;-1:-1:-1;;;;;797:18:255;;793:58;;824:27;;-1:-1:-1;;;824:27:255;;;;;;;;;;;4673:135:220;4763:7;4785:18;4795:7;4785:9;:18::i;7806:698:78:-;7918:2;-1:-1:-1;;;;;7910:10:78;:4;-1:-1:-1;;;;;7910:10:78;;;:24;;;;;7933:1;7924:6;:10;7910:24;7906:594;;;-1:-1:-1;;;;;7948:18:78;;;7944:277;;-1:-1:-1;;;;;8034:48:78;;7979:16;8034:48;;;-1:-1:-1;;;;;;;;;;;8034:48:78;;;;;7979:16;;8017:134;;8094:9;8115:26;8134:6;8115:18;:26::i;8017:134::-;-1:-1:-1;;;;;7978:173:78;;;-1:-1:-1;;;;;7978:173:78;;;8187:4;-1:-1:-1;;;;;8166:46:78;;8193:8;8203;8166:46;;;;;;19972:25:403;;;20028:2;20013:18;;20006:34;19960:2;19945:18;;19798:248;8166:46:78;;;;;;;;7968:253;;7944:277;-1:-1:-1;;;;;8232:16:78;;;8228:266;;-1:-1:-1;;;;;8316:46:78;;8261:16;8316:46;;;-1:-1:-1;;;;;;;;;;;8316:46:78;;;;;8261:16;;8299:127;;8374:4;8390:26;8409:6;8390:18;:26::i;8299:127::-;-1:-1:-1;;;;;8260:166:78;;;-1:-1:-1;;;;;8260:166:78;;;8462:2;-1:-1:-1;;;;;8441:44:78;;8466:8;8476;8441:44;;;;;;19972:25:403;;;20028:2;20013:18;;20006:34;19960:2;19945:18;;19798:248;8441:44:78;;;;;;;;8250:244;;7806:698;;;:::o;14291:213:348:-;14347:6;14377:16;14369:24;;14365:103;;;14416:41;;-1:-1:-1;;;14416:41:348;;14447:2;14416:41;;;19313:36:403;19365:18;;;19358:34;;;19286:18;;14416:41:348;19132:266:403;9624:196:73;9715:24;;9686:7;;9752:8;;:63;;9767:41;9781:4;9800:7;9806:1;9800:3;:7;:::i;9767:41::-;:48;-1:-1:-1;;;9767:48:73;;-1:-1:-1;;;;;9767:48:73;9752:63;;;9763:1;9745:70;9624:196;-1:-1:-1;;;9624:196:73:o;4260:178:143:-;4345:7;4367:66;4400:20;:18;:20::i;:::-;4422:10;3555:4:344;3549:11;-1:-1:-1;;;3573:23:344;;3625:4;3616:14;;3609:39;;;;3677:4;3668:14;;3661:34;3733:4;3718:20;;;3353:401;6803:260:342;6888:7;6908:17;6927:18;6947:16;6967:25;6978:4;6984:1;6987;6990;6967:10;:25::i;:::-;6907:85;;;;;;7002:28;7014:5;7021:8;7002:11;:28::i;:::-;-1:-1:-1;7047:9:342;;6803:260;-1:-1:-1;;;;;;6803:260:342:o;1161:202:142:-;-1:-1:-1;;;;;1008:37:142;;1240:15;1008:37;;;1554:66;1008:37;;;;;:39;;;;;;;;1284:16;;;1280:79;;1317:35;;-1:-1:-1;;;1317:35:142;;-1:-1:-1;;;;;20514:32:403;;1317:35:142;;;20496:51:403;20563:18;;;20556:34;;;20469:18;;1317:35:142;20322:274:403;13340:838:402;13410:17;13445:18;13457:5;13445:11;:18::i;:::-;13685:2;13636:4;13627:14;;13672:16;;;13439:24;;-1:-1:-1;13551:24:402;;13690:13;13668:36;-1:-1:-1;;;13566:1:402;13796:168;13863:15;;;13856:23;;13845:9;;;13838:42;13909:1;13902:9;;;-1:-1:-1;;13931:9:402;13796:168;13928:22;13800:14;;;14039:4;14035:1;14029:8;14025:19;14018:4;14012:11;14008:37;14005:1;14001:45;13997:1;13991:8;13987:60;13984:1;13977:71;14073:4;14070:1;14066:12;14061:17;;14153:4;14149:1;14143:8;14139:19;14132:4;14126:11;14122:37;14119:1;14115:45;14111:1;14105:8;14101:60;14098:1;14091:71;;;13340:838;;;:::o;445:282:86:-;-1:-1:-1;;;;;;1114:62:86;;1089:4;1114:62;;;296:66:88;1114:62:86;;;;;;;;:70;;:62;:70;503:182;;-1:-1:-1;;;;;;549:62:86;;:49;:62;;;296:66:88;549:62:86;;;;;:69;;-1:-1:-1;;549:69:86;614:4;549:69;;;503:182;;;646:32;;-1:-1:-1;;;646:32:86;;;;;;;;;;;503:182;695:27;;-1:-1:-1;;;;;;695:27:86;;;;;;;;445:282;:::o;2553:247:125:-;2650:32;2685:23;:21;:23::i;:::-;2650:58;-1:-1:-1;2715:8:125;;;:15;2726:4;2715:8;:15;:::i;:::-;-1:-1:-1;2736:10:125;;;:19;2749:6;2736:10;:19;:::i;:::-;-1:-1:-1;3941:7:125;2761:34;;-1:-1:-1;;2553:247:125:o;2882:332:143:-;2985:28;:35;3016:4;2985:28;:35;:::i;:::-;-1:-1:-1;3026:31:143;:41;3060:7;3026:31;:41;:::i;:::-;-1:-1:-1;;3161:1:143;-1:-1:-1;;;;;;;;;;;3124:38:143;;;3168:37;:41;-1:-1:-1;2882:332:143:o;8767:90:78:-;8825:7;8847:5;8851:1;8847;:5;:::i;3151:218:348:-;3208:7;-1:-1:-1;;;;;3231:25:348;;3227:105;;;3279:42;;-1:-1:-1;;;3279:42:348;;3310:3;3279:42;;;19313:36:403;19365:18;;;19358:34;;;19286:18;;3279:42:348;19132:266:403;8508:255:78;8661:7;8670;8692:66;8703:27;8721:8;:6;:8::i;:::-;8703:27;;:17;:27::i;:::-;8732:25;8735:14;:5;:12;:14::i;:::-;8751:5;8732:2;:25;;:::i;:::-;8692:5;;:66;:10;:66::i;:::-;8685:73;;;;8508:255;;;;;;;:::o;8861:95::-;8924:7;8946:5;8950:1;8946;:5;:::i;6177:577:143:-;6227:7;6242:18;6263:13;:11;:13::i;:::-;6286:18;;6242:34;;-1:-1:-1;6286:22:143;6282:468;;6325:22;;;;;;;;6177:577;-1:-1:-1;6177:577:143:o;6282:468::-;-1:-1:-1;;;;;;;;;;;6600:34:143;6646:15;;6642:102;;6680:10;6177:577;-1:-1:-1;;6177:577:143:o;6642:102::-;6722:13;6715:20;;;;6177:577;:::o;6963:613::-;7016:7;7031:21;7055:16;:14;:16::i;:::-;7081:21;;7031:40;;-1:-1:-1;7081:25:143;7077:495;;7123:25;;;;;;;;6963:613;-1:-1:-1;6963:613:143:o;7077:495::-;7413:37;;7462:18;;7458:108;;7499:13;6963:613;-1:-1:-1;;6963:613:143:o;8587:1642:347:-;8635:7;8658:1;8663;8658:6;8654:45;;-1:-1:-1;8687:1:347;;8587:1642;-1:-1:-1;8587:1642:347:o;8654:45::-;9378:14;9412:1;9401:7;9406:1;9401:4;:7::i;:::-;:12;;9395:1;:19;;9378:36;;9873:1;9862:6;9858:1;:10;;;;;:::i;:::-;;9849:6;:19;9848:26;;9839:35;;9922:1;9911:6;9907:1;:10;;;;;:::i;:::-;;9898:6;:19;9897:26;;9888:35;;9971:1;9960:6;9956:1;:10;;;;;:::i;:::-;;9947:6;:19;9946:26;;9937:35;;10020:1;10009:6;10005:1;:10;;;;;:::i;:::-;;9996:6;:19;9995:26;;9986:35;;10069:1;10058:6;10054:1;:10;;;;;:::i;:::-;;10045:6;:19;10044:26;;10035:35;;10118:1;10107:6;10103:1;:10;;;;;:::i;:::-;;10094:6;:19;10093:26;;10084:35;;10167:1;10156:6;10152:1;:10;;;;;:::i;:::-;;10143:6;:19;10142:26;;10133:35;;10189:23;10193:6;10205;10201:1;:10;;;;;:::i;:::-;;10189:3;:23::i;11772:361:73:-;11911:7;11926:186;11939:4;11933:3;:10;11926:186;;;11953:11;11967:23;11980:3;11985:4;11967:12;:23::i;:::-;13062:28;13115:20;;;13174:4;13161:18;;11953:37;;-1:-1:-1;12002:35:73;;;;13157:28;;12002:29;;;:35;11998:108;;;12056:3;12049:10;;11998:108;;;12090:7;:3;12096:1;12090:7;:::i;:::-;12084:13;;11998:108;11945:167;11926:186;;;-1:-1:-1;12124:4:73;11772:361;-1:-1:-1;;;11772:361:73:o;5140:1530:342:-;5266:7;;;6199:66;6186:79;;6182:164;;;-1:-1:-1;6297:1:342;;-1:-1:-1;6301:30:342;;-1:-1:-1;6333:1:342;6281:54;;6182:164;6457:24;;;6440:14;6457:24;;;;;;;;;21609:25:403;;;21682:4;21670:17;;21650:18;;;21643:45;;;;21704:18;;;21697:34;;;21747:18;;;21740:34;;;6457:24:342;;21581:19:403;;6457:24:342;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6457:24:342;;-1:-1:-1;;6457:24:342;;;-1:-1:-1;;;;;;;6495:20:342;;6491:113;;-1:-1:-1;6547:1:342;;-1:-1:-1;6551:29:342;;-1:-1:-1;6547:1:342;;-1:-1:-1;6531:62:342;;6491:113;6622:6;-1:-1:-1;6630:20:342;;-1:-1:-1;6630:20:342;;-1:-1:-1;5140:1530:342;;;;;;;;;:::o;7196:532::-;7291:20;7282:5;:29;;;;;;;;:::i;:::-;;7278:444;;7196:532;;:::o;7278:444::-;7387:29;7378:5;:38;;;;;;;;:::i;:::-;;7374:348;;7439:23;;-1:-1:-1;;;7439:23:342;;;;;;;;;;;7374:348;7492:35;7483:5;:44;;;;;;;;:::i;:::-;;7479:243;;7550:46;;-1:-1:-1;;;7550:46:342;;;;;1746:25:403;;;1719:18;;7550:46:342;1600:177:403;7479:243:342;7626:30;7617:5;:39;;;;;;;;:::i;:::-;;7613:109;;7679:32;;-1:-1:-1;;;7679:32:342;;;;;1746:25:403;;;1719:18;;7679:32:342;1600:177:403;14338:436:402;14397:17;14432:26;14452:5;14432:19;:26::i;:::-;14555:10;;14617:6;14605:19;;14567:1;14551:18;-1:-1:-1;;14670:11:402;;;14715:22;;;14670:11;14338:436;-1:-1:-1;;14338:436:402:o;7623:172:73:-;7721:7;;7752:38;7760:4;7779:3;7784:5;7752:7;:38::i;10699:983:347:-;10751:7;;10835:3;10826:12;;;:16;10822:99;;10872:3;10862:13;;;;10893;10822:99;10947:2;10938:11;;;:15;10934:96;;10983:2;10973:12;;;;11003;10934:96;11056:2;11047:11;;;:15;11043:96;;11092:2;11082:12;;;;11112;11043:96;11165:2;11156:11;;;:15;11152:96;;11201:2;11191:12;;;;11221;11152:96;11274:1;11265:10;;;:14;11261:93;;11309:1;11299:11;;;;11328;11261:93;11380:1;11371:10;;;:14;11367:93;;11415:1;11405:11;;;;11434;11367:93;11486:1;11477:10;;;:14;11473:93;;11521:1;11511:11;;;;11540;11473:93;11592:1;11583:10;;;:14;11579:64;;11627:1;11617:11;11669:6;10699:983;-1:-1:-1;;10699:983:347:o;2557:104::-;2615:7;2645:1;2641;:5;:13;;2653:1;2641:13;;;-1:-1:-1;2649:1:347;;2557:104;-1:-1:-1;2557:104:347:o;2774:153::-;2836:7;2909:11;2919:1;2910:5;;;2909:11;:::i;:::-;2899:21;;2900:5;;;2899:21;:::i;14911:1330:402:-;14978:17;15086:4;15080:11;15073:18;;15412:4;15407:3;15403:14;15397:4;15390:28;15444:34;15438:4;15431:48;15549:1;15544:3;15540:11;15533:18;;15576:2;15571:3;15564:15;15631:4;15626:3;15622:14;15668:1;15663:2;15660:1;15656:10;15649:21;15738:5;15734:2;15730:14;15721:23;;15940:1;15925:300;15990:1;15987;15983:9;15980:1;15976:17;16030:5;16027:1;16022:14;16088:2;16082:4;16078:13;16072:20;16068:1;16065;16061:9;16053:40;16134:4;16131:1;16127:12;16121:19;16118:1;16110:31;-1:-1:-1;;16170:1:402;16163:9;;;-1:-1:-1;;16192:9:402;15925:300;16189:22;15929:14;;14911:1330;;;:::o;10688:752:73:-;10833:11;;10795:7;;;;10855;;10851:585;;10918:25;10946:28;10960:4;10966:7;10972:1;10966:3;:7;:::i;10946:28::-;10918:56;;;;;;;;;;;;;;;;;;-1:-1:-1;;;10918:56:73;;;-1:-1:-1;;;;;10918:56:73;;;;;;;-1:-1:-1;11040:16:73;;;-1:-1:-1;11040:16:73;11032:56;;;;-1:-1:-1;;;11032:56:73;;22341:2:403;11032:56:73;;;22323:21:403;22380:2;22360:18;;;22353:30;22419:29;22399:18;;;22392:57;22466:18;;11032:56:73;22139:351:403;11032:56:73;11140:9;;:16;;;;;;;11136:161;;11206:5;11168:28;11182:4;11188:7;11194:1;11188:3;:7;:::i;11168:28::-;:43;;-1:-1:-1;;;;;11168:43:73;;;;-1:-1:-1;;;11168:43:73;;;;;;;;;;;11136:161;;;11246:41;;;;;;;;;;;;;;;-1:-1:-1;;;;;11246:41:73;;;;;;;;;;11236:52;;;;;;;-1:-1:-1;11236:52:73;;;;;;;;;;;;;;-1:-1:-1;;;11236:52:73;;;;;;;;;;11136:161;11312:11;;;;-1:-1:-1;11325:5:73;;-1:-1:-1;11304:27:73;;-1:-1:-1;11304:27:73;10851:585;-1:-1:-1;;11362:41:73;;;;;;;;;;;;;;;-1:-1:-1;;;;;11362:41:73;;;;;;;;;;11352:52;;;;;;;-1:-1:-1;11352:52:73;;;;;;;;;;;;;-1:-1:-1;;;11352:52:73;;;;;;;;;;;;-1:-1:-1;;11396:5:73;11412:17;;14:250:403;99:1;109:113;123:6;120:1;117:13;109:113;;;199:11;;;193:18;180:11;;;173:39;145:2;138:10;109:113;;;-1:-1:-1;;256:1:403;238:16;;231:27;14:250::o;269:271::-;311:3;349:5;343:12;376:6;371:3;364:19;392:76;461:6;454:4;449:3;445:14;438:4;431:5;427:16;392:76;:::i;:::-;522:2;501:15;-1:-1:-1;;497:29:403;488:39;;;;529:4;484:50;;269:271;-1:-1:-1;;269:271:403:o;545:220::-;694:2;683:9;676:21;657:4;714:45;755:2;744:9;740:18;732:6;714:45;:::i;770:180::-;829:6;882:2;870:9;861:7;857:23;853:32;850:52;;;898:1;895;888:12;850:52;-1:-1:-1;921:23:403;;770:180;-1:-1:-1;770:180:403:o;1163:173::-;1231:20;;-1:-1:-1;;;;;1280:31:403;;1270:42;;1260:70;;1326:1;1323;1316:12;1260:70;1163:173;;;:::o;1341:254::-;1409:6;1417;1470:2;1458:9;1449:7;1445:23;1441:32;1438:52;;;1486:1;1483;1476:12;1438:52;1509:29;1528:9;1509:29;:::i;:::-;1499:39;1585:2;1570:18;;;;1557:32;;-1:-1:-1;;;1341:254:403:o;1782:328::-;1859:6;1867;1875;1928:2;1916:9;1907:7;1903:23;1899:32;1896:52;;;1944:1;1941;1934:12;1896:52;1967:29;1986:9;1967:29;:::i;:::-;1957:39;;2015:38;2049:2;2038:9;2034:18;2015:38;:::i;:::-;2005:48;;2100:2;2089:9;2085:18;2072:32;2062:42;;1782:328;;;;;:::o;2297:127::-;2358:10;2353:3;2349:20;2346:1;2339:31;2389:4;2386:1;2379:15;2413:4;2410:1;2403:15;2429:632;2494:5;2524:18;2565:2;2557:6;2554:14;2551:40;;;2571:18;;:::i;:::-;2646:2;2640:9;2614:2;2700:15;;-1:-1:-1;;2696:24:403;;;2722:2;2692:33;2688:42;2676:55;;;2746:18;;;2766:22;;;2743:46;2740:72;;;2792:18;;:::i;:::-;2832:10;2828:2;2821:22;2861:6;2852:15;;2891:6;2883;2876:22;2931:3;2922:6;2917:3;2913:16;2910:25;2907:45;;;2948:1;2945;2938:12;2907:45;2998:6;2993:3;2986:4;2978:6;2974:17;2961:44;3053:1;3046:4;3037:6;3029;3025:19;3021:30;3014:41;;;;2429:632;;;;;:::o;3066:222::-;3109:5;3162:3;3155:4;3147:6;3143:17;3139:27;3129:55;;3180:1;3177;3170:12;3129:55;3202:80;3278:3;3269:6;3256:20;3249:4;3241:6;3237:17;3202:80;:::i;3293:1019::-;3428:6;3436;3444;3452;3460;3513:3;3501:9;3492:7;3488:23;3484:33;3481:53;;;3530:1;3527;3520:12;3481:53;3570:9;3557:23;3599:18;3640:2;3632:6;3629:14;3626:34;;;3656:1;3653;3646:12;3626:34;3679:50;3721:7;3712:6;3701:9;3697:22;3679:50;:::i;:::-;3669:60;;3782:2;3771:9;3767:18;3754:32;3738:48;;3811:2;3801:8;3798:16;3795:36;;;3827:1;3824;3817:12;3795:36;3850:52;3894:7;3883:8;3872:9;3868:24;3850:52;:::i;:::-;3840:62;;3921:38;3955:2;3944:9;3940:18;3921:38;:::i;:::-;3911:48;;4012:2;4001:9;3997:18;3984:32;3968:48;;4041:2;4031:8;4028:16;4025:36;;;4057:1;4054;4047:12;4025:36;4080:52;4124:7;4113:8;4102:9;4098:24;4080:52;:::i;:::-;4070:62;;4185:3;4174:9;4170:19;4157:33;4141:49;;4215:2;4205:8;4202:16;4199:36;;;4231:1;4228;4221:12;4199:36;;4254:52;4298:7;4287:8;4276:9;4272:24;4254:52;:::i;:::-;4244:62;;;3293:1019;;;;;;;;:::o;4317:322::-;4386:6;4439:2;4427:9;4418:7;4414:23;4410:32;4407:52;;;4455:1;4452;4445:12;4407:52;4495:9;4482:23;4528:18;4520:6;4517:30;4514:50;;;4560:1;4557;4550:12;4514:50;4583;4625:7;4616:6;4605:9;4601:22;4583:50;:::i;4644:186::-;4703:6;4756:2;4744:9;4735:7;4731:23;4727:32;4724:52;;;4772:1;4769;4762:12;4724:52;4795:29;4814:9;4795:29;:::i;4835:1043::-;5012:2;5001:9;4994:21;4975:4;5050:6;5044:13;5093:4;5088:2;5077:9;5073:18;5066:32;5121:52;5168:3;5157:9;5153:19;5139:12;5121:52;:::i;:::-;5107:66;;5222:2;5214:6;5210:15;5204:22;5249:2;5245:7;5316:2;5304:9;5296:6;5292:22;5288:31;5283:2;5272:9;5268:18;5261:59;5343:41;5377:6;5361:14;5343:41;:::i;:::-;5329:55;;5438:2;5430:6;5426:15;5420:22;5415:2;5404:9;5400:18;5393:50;5498:2;5490:6;5486:15;5480:22;5474:3;5463:9;5459:19;5452:51;5552:3;5544:6;5540:16;5534:23;5512:45;;5622:2;5610:9;5602:6;5598:22;5594:31;5588:3;5577:9;5573:19;5566:60;5649:41;5683:6;5667:14;5649:41;:::i;:::-;5635:55;;5739:3;5731:6;5727:16;5721:23;5699:45;;5810:2;5798:9;5790:6;5786:22;5782:31;5775:4;5764:9;5760:20;5753:61;;5831:41;5865:6;5849:14;5831:41;:::i;:::-;5823:49;4835:1043;-1:-1:-1;;;;;4835:1043:403:o;5883:1019::-;6018:6;6026;6034;6042;6050;6103:3;6091:9;6082:7;6078:23;6074:33;6071:53;;;6120:1;6117;6110:12;6071:53;6143:29;6162:9;6143:29;:::i;:::-;6133:39;;6223:2;6212:9;6208:18;6195:32;6246:18;6287:2;6279:6;6276:14;6273:34;;;6303:1;6300;6293:12;6273:34;6326:50;6368:7;6359:6;6348:9;6344:22;6326:50;:::i;:::-;6316:60;;6429:2;6418:9;6414:18;6401:32;6385:48;;6458:2;6448:8;6445:16;6442:36;;;6474:1;6471;6464:12;6442:36;6497:52;6541:7;6530:8;6519:9;6515:24;6497:52;:::i;6907:1259::-;7313:3;7308;7304:13;7296:6;7292:26;7281:9;7274:45;7255:4;7338:2;7376:3;7371:2;7360:9;7356:18;7349:31;7403:46;7444:3;7433:9;7429:19;7421:6;7403:46;:::i;:::-;7497:9;7489:6;7485:22;7480:2;7469:9;7465:18;7458:50;7531:33;7557:6;7549;7531:33;:::i;:::-;7595:2;7580:18;;7573:34;;;-1:-1:-1;;;;;7644:32:403;;7638:3;7623:19;;7616:61;7664:3;7693:19;;7686:35;;;7758:22;;;7752:3;7737:19;;7730:51;7830:13;;7852:22;;;7902:2;7928:15;;;;-1:-1:-1;7890:15:403;;;;-1:-1:-1;7971:169:403;7985:6;7982:1;7979:13;7971:169;;;8046:13;;8034:26;;8115:15;;;;8080:12;;;;8007:1;8000:9;7971:169;;;-1:-1:-1;8157:3:403;;6907:1259;-1:-1:-1;;;;;;;;;;;;6907:1259:403:o;8372:347::-;8437:6;8445;8498:2;8486:9;8477:7;8473:23;8469:32;8466:52;;;8514:1;8511;8504:12;8466:52;8537:29;8556:9;8537:29;:::i;:::-;8527:39;;8616:2;8605:9;8601:18;8588:32;8663:5;8656:13;8649:21;8642:5;8639:32;8629:60;;8685:1;8682;8675:12;8629:60;8708:5;8698:15;;;8372:347;;;;;:::o;8724:667::-;8819:6;8827;8835;8843;8896:3;8884:9;8875:7;8871:23;8867:33;8864:53;;;8913:1;8910;8903:12;8864:53;8936:29;8955:9;8936:29;:::i;:::-;8926:39;;8984:38;9018:2;9007:9;9003:18;8984:38;:::i;:::-;8974:48;;9069:2;9058:9;9054:18;9041:32;9031:42;;9124:2;9113:9;9109:18;9096:32;9151:18;9143:6;9140:30;9137:50;;;9183:1;9180;9173:12;9137:50;9206:22;;9259:4;9251:13;;9247:27;-1:-1:-1;9237:55:403;;9288:1;9285;9278:12;9237:55;9311:74;9377:7;9372:2;9359:16;9354:2;9350;9346:11;9311:74;:::i;:::-;9301:84;;;8724:667;;;;;;;:::o;9396:618::-;9498:6;9506;9514;9522;9530;9538;9591:3;9579:9;9570:7;9566:23;9562:33;9559:53;;;9608:1;9605;9598:12;9559:53;9631:29;9650:9;9631:29;:::i;:::-;9621:39;;9707:2;9696:9;9692:18;9679:32;9669:42;;9758:2;9747:9;9743:18;9730:32;9720:42;;9812:2;9801:9;9797:18;9784:32;9856:4;9849:5;9845:16;9838:5;9835:27;9825:55;;9876:1;9873;9866:12;9825:55;9396:618;;;;-1:-1:-1;9396:618:403;;9951:3;9936:19;;9923:33;;10003:3;9988:19;;;9975:33;;-1:-1:-1;9396:618:403;-1:-1:-1;;9396:618:403:o;10019:543::-;10107:6;10115;10168:2;10156:9;10147:7;10143:23;10139:32;10136:52;;;10184:1;10181;10174:12;10136:52;10224:9;10211:23;10253:18;10294:2;10286:6;10283:14;10280:34;;;10310:1;10307;10300:12;10280:34;10333:50;10375:7;10366:6;10355:9;10351:22;10333:50;:::i;:::-;10323:60;;10436:2;10425:9;10421:18;10408:32;10392:48;;10465:2;10455:8;10452:16;10449:36;;;10481:1;10478;10471:12;10449:36;;10504:52;10548:7;10537:8;10526:9;10522:24;10504:52;:::i;:::-;10494:62;;;10019:543;;;;;:::o;10567:743::-;10674:6;10682;10690;10743:2;10731:9;10722:7;10718:23;10714:32;10711:52;;;10759:1;10756;10749:12;10711:52;10799:9;10786:23;10828:18;10869:2;10861:6;10858:14;10855:34;;;10885:1;10882;10875:12;10855:34;10908:50;10950:7;10941:6;10930:9;10926:22;10908:50;:::i;:::-;10898:60;;11011:2;11000:9;10996:18;10983:32;10967:48;;11040:2;11030:8;11027:16;11024:36;;;11056:1;11053;11046:12;11024:36;11079:52;11123:7;11112:8;11101:9;11097:24;11079:52;:::i;:::-;11069:62;;11184:2;11173:9;11169:18;11156:32;11140:48;;11213:2;11203:8;11200:16;11197:36;;;11229:1;11226;11219:12;11197:36;;11252:52;11296:7;11285:8;11274:9;11270:24;11252:52;:::i;:::-;11242:62;;;10567:743;;;;;:::o;11315:260::-;11383:6;11391;11444:2;11432:9;11423:7;11419:23;11415:32;11412:52;;;11460:1;11457;11450:12;11412:52;11483:29;11502:9;11483:29;:::i;:::-;11473:39;;11531:38;11565:2;11554:9;11550:18;11531:38;:::i;:::-;11521:48;;11315:260;;;;;:::o;11772:380::-;11851:1;11847:12;;;;11894;;;11915:61;;11969:4;11961:6;11957:17;11947:27;;11915:61;12022:2;12014:6;12011:14;11991:18;11988:38;11985:161;;12068:10;12063:3;12059:20;12056:1;12049:31;12103:4;12100:1;12093:15;12131:4;12128:1;12121:15;13385:543;13487:2;13482:3;13479:11;13476:446;;;13523:1;13547:5;13544:1;13537:16;13591:4;13588:1;13578:18;13661:2;13649:10;13645:19;13642:1;13638:27;13632:4;13628:38;13697:4;13685:10;13682:20;13679:47;;;-1:-1:-1;13720:4:403;13679:47;13775:2;13770:3;13766:12;13763:1;13759:20;13753:4;13749:31;13739:41;;13830:82;13848:2;13841:5;13838:13;13830:82;;;13893:17;;;13874:1;13863:13;13830:82;;14104:1345;14230:3;14224:10;14257:18;14249:6;14246:30;14243:56;;;14279:18;;:::i;:::-;14308:97;14398:6;14358:38;14390:4;14384:11;14358:38;:::i;:::-;14352:4;14308:97;:::i;:::-;14460:4;;14517:2;14506:14;;14534:1;14529:663;;;;15236:1;15253:6;15250:89;;;-1:-1:-1;15305:19:403;;;15299:26;15250:89;-1:-1:-1;;14061:1:403;14057:11;;;14053:24;14049:29;14039:40;14085:1;14081:11;;;14036:57;15352:81;;14499:944;;14529:663;13332:1;13325:14;;;13369:4;13356:18;;-1:-1:-1;;14565:20:403;;;14683:236;14697:7;14694:1;14691:14;14683:236;;;14786:19;;;14780:26;14765:42;;14878:27;;;;14846:1;14834:14;;;;14713:19;;14683:236;;;14687:3;14947:6;14938:7;14935:19;14932:201;;;15008:19;;;15002:26;-1:-1:-1;;15091:1:403;15087:14;;;15103:3;15083:24;15079:37;15075:42;15060:58;15045:74;;14932:201;-1:-1:-1;;;;;15179:1:403;15163:14;;;15159:22;15146:36;;-1:-1:-1;14104:1345:403:o;15807:489::-;-1:-1:-1;;;;;16076:15:403;;;16058:34;;16128:15;;16123:2;16108:18;;16101:43;16175:2;16160:18;;16153:34;;;16223:3;16218:2;16203:18;;16196:31;;;16001:4;;16244:46;;16270:19;;16262:6;16244:46;:::i;:::-;16236:54;15807:489;-1:-1:-1;;;;;;15807:489:403:o;16301:290::-;16370:6;16423:2;16411:9;16402:7;16398:23;16394:32;16391:52;;;16439:1;16436;16429:12;16391:52;16465:16;;-1:-1:-1;;;;;;16510:32:403;;16500:43;;16490:71;;16557:1;16554;16547:12;17371:127;17432:10;17427:3;17423:20;17420:1;17413:31;17463:4;17460:1;17453:15;17487:4;17484:1;17477:15;17503:629;17772:3;17810:6;17804:13;17826:66;17885:6;17880:3;17873:4;17865:6;17861:17;17826:66;:::i;:::-;-1:-1:-1;;;17914:16:403;;;17939:18;;;17982:13;;18004:78;17982:13;18069:1;18058:13;;18051:4;18039:17;;18004:78;:::i;:::-;18102:20;18124:1;18098:28;;17503:629;-1:-1:-1;;;;17503:629:403:o;18137:496::-;18316:3;18354:6;18348:13;18370:66;18429:6;18424:3;18417:4;18409:6;18405:17;18370:66;:::i;:::-;18499:13;;18458:16;;;;18521:70;18499:13;18458:16;18568:4;18556:17;;18521:70;:::i;:::-;18607:20;;18137:496;-1:-1:-1;;;;18137:496:403:o;19403:127::-;19464:10;19459:3;19455:20;19452:1;19445:31;19495:4;19492:1;19485:15;19519:4;19516:1;19509:15;19535:128;19602:9;;;19623:11;;;19620:37;;;19637:18;;:::i;19668:125::-;19733:9;;;19754:10;;;19751:36;;;19767:18;;:::i;20601:182::-;-1:-1:-1;;;;;20708:10:403;;;20720;;;20704:27;;20743:11;;;20740:37;;;20757:18;;:::i;:::-;20740:37;20601:182;;;;:::o;21060:185::-;-1:-1:-1;;;;;21181:10:403;;;21169;;;21165:27;;21204:12;;;21201:38;;;21219:18;;:::i;21250:127::-;21311:10;21306:3;21302:20;21299:1;21292:31;21342:4;21339:1;21332:15;21366:4;21363:1;21356:15;21785:127;21846:10;21841:3;21837:20;21834:1;21827:31;21877:4;21874:1;21867:15;21901:4;21898:1;21891:15;21917:217;21957:1;21983;21973:132;;22027:10;22022:3;22018:20;22015:1;22008:31;22062:4;22059:1;22052:15;22090:4;22087:1;22080:15;21973:132;-1:-1:-1;22119:9:403;;21917:217::o","linkReferences":{}},"methodIdentifiers":{"CLOCK_MODE()":"4bf5d7e9","DOMAIN_SEPARATOR()":"3644e515","__ERC721A_init(string,string)":"d2f01f19","__SpaceOwner_init(string,string,string)":"d7a901d3","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","clock()":"91ddadf4","delegate(address)":"5c19a95c","delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)":"c3cda520","delegates(address)":"587cde1e","eip712Domain()":"84b0196e","getApproved(uint256)":"081812fc","getDefaultUri()":"d6536540","getFactory()":"88cc58e4","getPastTotalSupply(uint256)":"8e539e8c","getPastVotes(address,uint256)":"3a46b1a8","getSpaceInfo(address)":"6a9a38e6","getVotes(address)":"9ab24eb0","isApprovedForAll(address,address)":"e985e9c5","mintSpace(string,string,address,string,string)":"3bf5b8f4","name()":"06fdde03","nextTokenId()":"75794a3c","nonces(address)":"7ecebe00","ownerOf(uint256)":"6352211e","safeTransferFrom(address,address,uint256)":"42842e0e","safeTransferFrom(address,address,uint256,bytes)":"b88d4fde","setApprovalForAll(address,bool)":"a22cb465","setDefaultUri(string)":"466a18de","setFactory(address)":"5bb47808","symbol()":"95d89b41","tokenURI(uint256)":"c87b56dd","totalSupply()":"18160ddd","transferFrom(address,address,uint256)":"23b872dd","updateSpaceInfo(address,string,string,string,string)":"84880614"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AlreadyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AlreadyEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ApprovalCallerNotOwnerNorApproved\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ApprovalQueryForNonexistentToken\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BalanceQueryForZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ECDSAInvalidSignature\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"ECDSAInvalidSignatureLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"ECDSAInvalidSignatureS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"GuardianEnabled\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"version\",\"type\":\"uint32\"}],\"name\":\"Initializable_AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Initializable_InInitializingState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Initializable_NotInInitializingState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Introspection_AlreadySupported\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Introspection_NotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"currentNonce\",\"type\":\"uint256\"}],\"name\":\"InvalidAccountNonce\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MintERC2309QuantityExceedsLimit\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MintToZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MintZeroQuantity\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotExternalAccount\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Ownable__NotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Ownable__ZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OwnerQueryForNonexistentToken\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OwnershipNotInitializedForExtraData\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"bits\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"SafeCastOverflowedUintDowncast\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SpaceOwner__DefaultUriNotSet\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SpaceOwner__OnlyFactoryAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SpaceOwner__OnlySpaceOwnerAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SpaceOwner__SpaceNotFound\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TransferCallerNotOwnerNorApproved\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TransferFromIncorrectOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TransferToNonERC721ReceiverImplementer\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TransferToZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"URIQueryForNonexistentToken\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Validator__InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Validator__InvalidStringLength\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"fromTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"toTokenId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"ConsecutiveTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"fromDelegate\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"toDelegate\",\"type\":\"address\"}],\"name\":\"DelegateChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"delegate\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"previousBalance\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newBalance\",\"type\":\"uint256\"}],\"name\":\"DelegateVotesChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"EIP712DomainChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bool\",\"name\":\"enabled\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"cooldown\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"GuardianUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"version\",\"type\":\"uint32\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"InterfaceAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"InterfaceRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"uri\",\"type\":\"string\"}],\"name\":\"SpaceOwner__SetDefaultUri\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"factory\",\"type\":\"address\"}],\"name\":\"SpaceOwner__SetFactory\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"space\",\"type\":\"address\"}],\"name\":\"SpaceOwner__UpdateSpace\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"CLOCK_MODE\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"result\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name_\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol_\",\"type\":\"string\"}],\"name\":\"__ERC721A_init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"version\",\"type\":\"string\"}],\"name\":\"__SpaceOwner_init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"clock\",\"outputs\":[{\"internalType\":\"uint48\",\"name\":\"\",\"type\":\"uint48\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"delegate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expiry\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"delegateBySig\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"delegates\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"eip712Domain\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"fields\",\"type\":\"bytes1\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"version\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"verifyingContract\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"},{\"internalType\":\"uint256[]\",\"name\":\"extensions\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDefaultUri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"timepoint\",\"type\":\"uint256\"}],\"name\":\"getPastTotalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timepoint\",\"type\":\"uint256\"}],\"name\":\"getPastVotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"space\",\"type\":\"address\"}],\"name\":\"getSpaceInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"uri\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"createdAt\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"shortDescription\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"longDescription\",\"type\":\"string\"}],\"internalType\":\"struct ISpaceOwnerBase.Space\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"getVotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"uri\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"space\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"shortDescription\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"longDescription\",\"type\":\"string\"}],\"name\":\"mintSpace\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextTokenId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"uri\",\"type\":\"string\"}],\"name\":\"setDefaultUri\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"factory\",\"type\":\"address\"}],\"name\":\"setFactory\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"space\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"uri\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"shortDescription\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"longDescription\",\"type\":\"string\"}],\"name\":\"updateSpaceInfo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"ECDSAInvalidSignature()\":[{\"details\":\"The signature derives the `address(0)`.\"}],\"ECDSAInvalidSignatureLength(uint256)\":[{\"details\":\"The signature has an invalid length.\"}],\"ECDSAInvalidSignatureS(bytes32)\":[{\"details\":\"The signature has an S value that is in the upper half order.\"}],\"InvalidAccountNonce(address,uint256)\":[{\"details\":\"The nonce used for an `account` is not the expected current nonce.\"}],\"SafeCastOverflowedUintDowncast(uint8,uint256)\":[{\"details\":\"Value doesn't fit in an uint of `bits` size.\"}]},\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\"},\"ConsecutiveTransfer(uint256,uint256,address,address)\":{\"details\":\"Emitted when tokens in `fromTokenId` to `toTokenId` (inclusive) is transferred from `from` to `to`, as defined in the [ERC2309](https://eips.ethereum.org/EIPS/eip-2309) standard. See {_mintERC2309} for more details.\"},\"DelegateChanged(address,address,address)\":{\"details\":\"Emitted when an account changes their delegate.\"},\"DelegateVotesChanged(address,uint256,uint256)\":{\"details\":\"Emitted when a token transfer or delegate change results in changes to a delegate's number of votes.\"},\"EIP712DomainChanged()\":{\"details\":\"MAY be emitted to signal that the domain could have changed.\"},\"OwnershipTransferred(address,address)\":{\"details\":\"This emits when ownership of a contract changes.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `tokenId` token is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"CLOCK_MODE()\":{\"details\":\"Description of the clock\"},\"approve(address,uint256)\":{\"details\":\"Gives permission to `to` to transfer `tokenId` token to another account. See {ERC721A-_approve}. Requirements: - The caller must own the token or be an approved operator.\"},\"balanceOf(address)\":{\"details\":\"Returns the number of tokens in `owner`'s account.\"},\"clock()\":{\"details\":\"Clock used for flagging checkpoints. Can be overridden to implement timestamp based checkpoints (and voting).\"},\"delegate(address)\":{\"details\":\"Delegates votes from the sender to `delegatee`.\"},\"delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)\":{\"details\":\"Delegates votes from signer to `delegatee`.\"},\"delegates(address)\":{\"details\":\"Returns the delegate that `account` has chosen.\"},\"eip712Domain()\":{\"details\":\"See {EIP-5267}. _Available since v4.9._\"},\"getApproved(uint256)\":{\"details\":\"Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist.\"},\"getPastTotalSupply(uint256)\":{\"details\":\"Returns the total supply of votes available at a specific moment in the past. If the `clock()` is configured to use block numbers, this will return the value at the end of the corresponding block. NOTE: This value is the sum of all available votes, which is not necessarily the sum of all delegated votes. Votes that have not been delegated are still part of total supply, even though they would not participate in a vote.\"},\"getPastVotes(address,uint256)\":{\"details\":\"Returns the amount of votes that `account` had at a specific moment in the past. If the `clock()` is configured to use block numbers, this will return the value at the end of the corresponding block.\"},\"getSpaceInfo(address)\":{\"params\":{\"space\":\"The address of the space\"},\"returns\":{\"_0\":\"space The space info\"}},\"getVotes(address)\":{\"details\":\"Returns the current amount of votes that `account` has.\"},\"isApprovedForAll(address,address)\":{\"details\":\"Returns if the `operator` is allowed to manage all of the assets of `owner`. See {setApprovalForAll}.\"},\"mintSpace(string,string,address,string,string)\":{\"details\":\"Only the factory is allowed to mint spaces\",\"params\":{\"longDescription\":\"The long description of the space\",\"name\":\"The name of the space\",\"shortDescription\":\"The short description of the space\",\"space\":\"The address of the space\",\"uri\":\"The URI of the space\"},\"returns\":{\"tokenId\":\"The token id of the minted space\"}},\"name()\":{\"details\":\"Returns the token collection name.\"},\"ownerOf(uint256)\":{\"details\":\"Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Equivalent to `safeTransferFrom(from, to, tokenId, '')`.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the caller. Emits an {ApprovalForAll} event.\"},\"symbol()\":{\"details\":\"Returns the token collection symbol.\"},\"tokenURI(uint256)\":{\"details\":\"Returns the Uniform Resource Identifier (URI) for `tokenId` token.\"},\"totalSupply()\":{\"details\":\"Returns the total number of tokens in existence. Burned tokens will reduce the count. To get the total number of tokens minted, please see {_totalMinted}.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfers `tokenId` from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event.\"},\"updateSpaceInfo(address,string,string,string,string)\":{\"details\":\"Only the space owner is allowed to update the space info\",\"params\":{\"longDescription\":\"The long description of the space\",\"name\":\"The name of the space\",\"shortDescription\":\"The short description of the space\",\"space\":\"The address of the space\",\"uri\":\"The URI of the space\"}}},\"version\":1},\"userdoc\":{\"errors\":{\"ApprovalCallerNotOwnerNorApproved()\":[{\"notice\":\"The caller must own the token or be an approved operator.\"}],\"ApprovalQueryForNonexistentToken()\":[{\"notice\":\"The token does not exist.\"}],\"BalanceQueryForZeroAddress()\":[{\"notice\":\"Cannot query the balance for the zero address.\"}],\"MintERC2309QuantityExceedsLimit()\":[{\"notice\":\"The `quantity` minted with ERC2309 exceeds the safety limit.\"}],\"MintToZeroAddress()\":[{\"notice\":\"Cannot mint to the zero address.\"}],\"MintZeroQuantity()\":[{\"notice\":\"The quantity of tokens minted must be more than zero.\"}],\"OwnerQueryForNonexistentToken()\":[{\"notice\":\"The token does not exist.\"}],\"OwnershipNotInitializedForExtraData()\":[{\"notice\":\"The `extraData` cannot be set on an unintialized ownership slot.\"}],\"TransferCallerNotOwnerNorApproved()\":[{\"notice\":\"The caller must own the token or be an approved operator.\"}],\"TransferFromIncorrectOwner()\":[{\"notice\":\"The token must be owned by `from`.\"}],\"TransferToNonERC721ReceiverImplementer()\":[{\"notice\":\"Cannot safely transfer to a contract that does not implement the ERC721Receiver interface.\"}],\"TransferToZeroAddress()\":[{\"notice\":\"Cannot transfer to the zero address.\"}],\"URIQueryForNonexistentToken()\":[{\"notice\":\"The token does not exist.\"}]},\"events\":{\"InterfaceAdded(bytes4)\":{\"notice\":\"Emitted when an interface is added to the contract via `_addInterface`.\"},\"InterfaceRemoved(bytes4)\":{\"notice\":\"Emitted when an interface is removed from the contract via `_removeInterface`.\"}},\"kind\":\"user\",\"methods\":{\"getDefaultUri()\":{\"notice\":\"Get the default URI\"},\"getFactory()\":{\"notice\":\"Get the factory address\"},\"getSpaceInfo(address)\":{\"notice\":\"Get the space info\"},\"mintSpace(string,string,address,string,string)\":{\"notice\":\"Mint a space\"},\"nextTokenId()\":{\"notice\":\"Get the next token id that will be used to mint a space\"},\"setDefaultUri(string)\":{\"notice\":\"Set the default URI\"},\"setFactory(address)\":{\"notice\":\"Set the factory address that is allowed to mint spaces\"},\"updateSpaceInfo(address,string,string,string,string)\":{\"notice\":\"Update the space info\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/src/spaces/facets/owner/SpaceOwner.sol\":\"SpaceOwner\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"appendCBOR\":false,\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin/=lib/@openzeppelin/\",\":@prb/math/=lib/@prb/math/src/\",\":@prb/test/=lib/@prb/test/src/\",\":account-abstraction/=lib/account-abstraction/contracts/\",\":base64/=lib/base64/\",\":ds-test/=lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\",\":hardhat-deploy/=lib/hardhat-deploy/\",\":solady/=lib/solady/src/\"]},\"sources\":{\"contracts/src/diamond/facets/Facet.sol\":{\"keccak256\":\"0x931702541a5e4a2756665e53baf1b04aa0418d5a9c635e519058905e21ae0c57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b785043acac69be2d2545bc4492b2c08b6e931a53737f8508baf3f98c8743863\",\"dweb:/ipfs/QmeLzqURWDmXHJftmMXRsywdJw96CNDB9DQmgTpG1woYvc\"]},\"contracts/src/diamond/facets/governance/votes/Checkpoints.sol\":{\"keccak256\":\"0x4b98db2e67e47ec59caa78fade51e9ec6fa33ee2592e46fed09d9167ebe76c8a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72ec6949ee33fb9c137bba362b94af699762fadd66334128d1dd0dbcd4301bc6\",\"dweb:/ipfs/QmQybe6k5K3gss4zzCPqoba6ZBZE5p8KJRoQ2RzkE91JRV\"]},\"contracts/src/diamond/facets/governance/votes/IERC5805.sol\":{\"keccak256\":\"0x8b3b84026610f99bcac6139359305a46c537edf377e44771b904c2bd35719ee3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://49a8e7af9b47b6bbd794ccb50380b8f9e9b84561d62bcbf16843dde55bab86e6\",\"dweb:/ipfs/QmdBdYxvhwCwtqW9DfPa6Bw5PrYdzhuKQyJv4vcLsttqrV\"]},\"contracts/src/diamond/facets/governance/votes/IERC6372.sol\":{\"keccak256\":\"0xc3fa5c25bdd3db6126e04897496889e68a65749b050ae8fede0ff80e322aca86\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bcf56ae1474c9a3032f8b15b1bbbeeb50ac21c574047f846673d4aca9bf82db4\",\"dweb:/ipfs/Qmcce1zD6TBWiMLXMDsFF6bUrwtVtharjwvAbtkMmoYRgd\"]},\"contracts/src/diamond/facets/governance/votes/IVotes.sol\":{\"keccak256\":\"0xef9a51a12d9c5a331de719be078e39858739a3d5043ebc20814d1331d8a7d8c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8a077058f77857cd2668fc97943dd64fdfd2463b8a0e163ef9973da8bb1f593a\",\"dweb:/ipfs/QmXZavPSRakx4GHD9gDpDBWQDt1SL2hYvbARA62zVeUq2w\"]},\"contracts/src/diamond/facets/governance/votes/Votes.sol\":{\"keccak256\":\"0x583ee53b96d9ead23925281c765624a48e7a385942247c4da1ecc1052193ed67\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c5c8cc50c062867c32ad9e3d0b4ad847f22576809d9f704aa8ee72b7ab617462\",\"dweb:/ipfs/QmSayHRuL6dwMfYNBNe29Sp63oeNDoemZttLWCv1urWCZc\"]},\"contracts/src/diamond/facets/governance/votes/VotesBase.sol\":{\"keccak256\":\"0x41049b5967fcceaf40dab9bb2863a701ba5aa68fa219321773028498c61e6add\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e63ecb4168e2b2f4819e606bf2b66195b48e42bd5d22a3def701dac016160112\",\"dweb:/ipfs/QmVJxvxjkTE9cH44DRXCwGntEyPRgsVDBiw2AiCT1KNDBC\"]},\"contracts/src/diamond/facets/governance/votes/VotesStorage.sol\":{\"keccak256\":\"0x87a2f9c85f63fcfa8ce2dc14d5a9a6118b33fd7000fb988b300519dec9b89629\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://daef1e04a36eb664ec08d4627a2038f3decbeac93b13a2c651b52681ef6f5f5e\",\"dweb:/ipfs/QmbV5SXhZnUW52HLEbhNhKeRXDCyPR6zAJRa98Vh3m9ptF\"]},\"contracts/src/diamond/facets/initializable/Initializable.sol\":{\"keccak256\":\"0xe02e99665b5acb22d5c508c3bda97c35acd2597ce0a58569a19cc12f0010da90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b586a51dbe63e8763ae0b2b3dadd5c8559f47bc8cbaa0e9fe52aaec4c3677552\",\"dweb:/ipfs/QmRtaVikg6YDwzUAtY7WV793taZgT1ZxyMB4PLAEqGBeCC\"]},\"contracts/src/diamond/facets/initializable/InitializableStorage.sol\":{\"keccak256\":\"0xf8170e6977d685c218f65185478fbb9916e64f63aab1dcd195056438466f458a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://83ea3cf77f012eef93d10593e3beded36b449611063fd8dfbdb44e4346f87eb4\",\"dweb:/ipfs/QmVasL7QnxXEmiUsLJzpfig8717zLUhZfyQxiBbFGDEVVg\"]},\"contracts/src/diamond/facets/introspection/IERC165.sol\":{\"keccak256\":\"0x486758ee326820b0dd468c6a7a90fda8d67d48d3114792c587cee0e8417b366b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b695090abcec8c2d487d73961265030fa4f64ecd84f6d80b85c6c7d4d9142ea0\",\"dweb:/ipfs/QmQTKuV2WEoy6vTCRxL39zEqubLUf9NhoC2BGB19CiYqRq\"]},\"contracts/src/diamond/facets/introspection/IntrospectionBase.sol\":{\"keccak256\":\"0x93ac0d2f738615e69dbcfd5fa6ac5840ec48329ac92094605638bcf2abd6708f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fbcb2cd0e47b6ef39bec6cbdeedf6e292e8849d4e25f4bb6c72ee574446b02f1\",\"dweb:/ipfs/QmcDwxFALaQBLbsGsjdttkQkE48PdKWq43XY7f34MxqZSw\"]},\"contracts/src/diamond/facets/introspection/IntrospectionStorage.sol\":{\"keccak256\":\"0x306f41ef86bc5050a28c1dbf855d3f6f623be4aebc0a0f96474dae85979f7763\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dbad6f8e6685690ae75f6c9066972a45400b45307245feab8990af18a4c38e91\",\"dweb:/ipfs/QmcTUqiSL1z2nwokpNNsXQkjVTaFdFJiM2exguZpPDDXEM\"]},\"contracts/src/diamond/facets/ownable/IERC173.sol\":{\"keccak256\":\"0x677cebaa56ee33950d04ba5baef02188da026beb7cf669bdf580410cb1f1c303\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d5be56219a4ab8d9709db7ffb74c73ee1be268b8f77308ef7a72d8f2820fb30b\",\"dweb:/ipfs/QmeTuAZMwRf3uRHMtHEd7M7LvGyRAEmoCikF4Pb6dCAKXd\"]},\"contracts/src/diamond/facets/ownable/OwnableBase.sol\":{\"keccak256\":\"0x272abaecc104d5f23d77a623cf1548620d24b0f447eb2a12144e27561ff489f2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fcb8c20ff7346bdc5dba82e6680cc0ea64087460a12153e3b6c3416f6addf875\",\"dweb:/ipfs/QmfEEufJBzudSDekQteQkb3CzmnzUPT3GDhNgVpHNC9xaf\"]},\"contracts/src/diamond/facets/ownable/OwnableStorage.sol\":{\"keccak256\":\"0xda650482ce08c04110366cb01408aaabd01383d9c504b7cacfb2674aae688dcd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://694f42ffb353fccaa1eadf91dee3a3cee7253e3f357bcba2b175fd7be701e27e\",\"dweb:/ipfs/QmPxxVerATSYrNLp7snnSvNVsbLPm1wzHULhBbtR333eik\"]},\"contracts/src/diamond/facets/token/ERC721A/ERC721A.sol\":{\"keccak256\":\"0x5662ab29272ecaabdaf5792c368a71693fcad9df24566f9e470ff1ec3510fd8f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2ef719ff8dce040daf5bcfe328f3463261fb3acfe5c41c589365143916748cc3\",\"dweb:/ipfs/QmUm4PHj4y2237H7hnCwnfRyTWbp1DHWpc8GN26M6T4ToC\"]},\"contracts/src/diamond/facets/token/ERC721A/ERC721ABase.sol\":{\"keccak256\":\"0x27b65225578e0cd90b90ab4ce91c4dfe621b43a58df227d3fdb0494c8f317d62\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://70db26d8735dd6b7e7a847712603f793728521ebd05ad8640d6068b395dce3ba\",\"dweb:/ipfs/QmYeC1EM3XQWgHjQKpT41TksDFcCzr4Sz8JPRdagFms7mE\"]},\"contracts/src/diamond/facets/token/ERC721A/ERC721AStorage.sol\":{\"keccak256\":\"0x1f85619c07524883b96fd2f3ca92ea3e2343466c0832cc03f6eb1cbb828896f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://06adf57b874d40a123eb3e7bf89cd7f49d29a93c142b26336263529ccd692e04\",\"dweb:/ipfs/QmQAhsfGRBPuBcSE1mqocTvutK9c4NfJPsbN4XQXtbsLey\"]},\"contracts/src/diamond/facets/token/ERC721A/IERC721A.sol\":{\"keccak256\":\"0xb57dee608d37c98c32ac38fa3c84e77f5962cf39a0697815ad209edf55593782\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://092750f101ae80c5bace9fd53ae87547a0aac6109cd58290609acd2ef489ce9d\",\"dweb:/ipfs/QmREM18vUEQmcmnTSyR4XxHB9Ykqomc9RuCFZcWNiovgbz\"]},\"contracts/src/diamond/utils/Context.sol\":{\"keccak256\":\"0x4566c941f553d989324d4308c037fe0669062c746d6e5108ce533fcc8ffbcaac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87908ef7e56c826210414cb25a50a3073188e96e6ac2afc2b56d0bba6abb48a7\",\"dweb:/ipfs/QmT41NMs4REQxxeuR48JUcB39UTgcaKdUvizc2XawUF5aq\"]},\"contracts/src/diamond/utils/Nonces.sol\":{\"keccak256\":\"0xba683e7b1dc9bc812c0c33ce7efb8e7505a881ee475b8ef2230af11377418732\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://69408950cf9d4fb74bbf79e475d338363ca4f7a492de5827b3f93a02da443732\",\"dweb:/ipfs/QmT6nt6Dpp2stTjCDEzepf6unVE7bcetXdshPnwmJFfXaf\"]},\"contracts/src/diamond/utils/cryptography/EIP712.sol\":{\"keccak256\":\"0xa4854e007ca8e80368e578576d65d47cb4022a7c031bc7abb4d94df5498935eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed66cebd356963dd8bc33459fea266da15cb87bd4f586399dba84b525e0fcd6a\",\"dweb:/ipfs/QmXqgEnTnEusLhXXuycj73PZK1pRrw6ES4BQvEKfvKa2FR\"]},\"contracts/src/diamond/utils/cryptography/IERC5267.sol\":{\"keccak256\":\"0x29135f4d4e9e50c65240a1837a077ba44470aadd8c9bad0f5bb1cb32d50018e7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91eb5c894de0b09144d3b1c689f72fb26d638eb2eaa3217396ed86d41610214f\",\"dweb:/ipfs/Qmexr1dtSeFD8sbrbk3U8pp1WUL5Caq3VoeeHy6bwmxMbD\"]},\"contracts/src/spaces/facets/guardian/GuardianBase.sol\":{\"keccak256\":\"0xe76248dbf516fb6a32934062fac4f2b3e19f83ba1a4df04d55b55c15be0265d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a2059a7b6b82f2de1654ff8bca374e32fa000e613ffb706197edd09565cb7a70\",\"dweb:/ipfs/QmUFTcFy64pFTwEwtGFrkoL84eZi7zVjAp46k1sWpAfUn5\"]},\"contracts/src/spaces/facets/guardian/GuardianStorage.sol\":{\"keccak256\":\"0xb6d7ae2fe80c40120223e660bf5888612f8e93c0e7dc70d6d2532d3e366f0674\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff77c0e4ad11ae6967a46d67c38422e06e45eb4e06aa7d99d611b8e4672aae5f\",\"dweb:/ipfs/QmfZui9wfZimGa4Q93zudgdit6ZUSgTET2WCKYWB7QkpVD\"]},\"contracts/src/spaces/facets/guardian/IGuardian.sol\":{\"keccak256\":\"0x7490883034a06f610a169e87f2bd15f5c904c87ea1eda80da63d17045b77b5bd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://44ea9689c8d31f5c31ebb470ac85f2d6be30d7698dbe4730454e19c5f72898f7\",\"dweb:/ipfs/QmUsWEQ4qFif8GghZGT8b7K52WrTbSgfjZPpPGxFzhz2kr\"]},\"contracts/src/spaces/facets/owner/ISpaceOwner.sol\":{\"keccak256\":\"0x7baa36238144aae1068d9df8b28c6741cbcf1f26e53c0e429fc62c351623c1f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4d702b63539e714f343482f80de3f342d7870647cbeb01b42abab7dc9805683a\",\"dweb:/ipfs/QmcTDjumaJfXvAoyT6G38meixc7omy6MUuX33FrRuc8hNw\"]},\"contracts/src/spaces/facets/owner/SpaceOwner.sol\":{\"keccak256\":\"0xb70a369ccc910d3d4397e48be446fb32e308ad951ed337edbd8300f5a1dd87c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5267c28f5aebfea915e5acce5f83b1f03588772094104f1817f676865ecef8a0\",\"dweb:/ipfs/QmRQSjcgnspgPVwkJnQ6f4uL4oAc29eKBujVaeAcmy9Lt2\"]},\"contracts/src/spaces/facets/owner/SpaceOwnerBase.sol\":{\"keccak256\":\"0xa1cb5b0bc9aec89791654a4725f7c42798245a432f3f3a741e4999fd12020f77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720a72562f1f8c129b3b276a4fb67cf403bc628db1534fed04e45a79b7773cb1\",\"dweb:/ipfs/QmNu34EsvFQjbaE8MwdxkAn4iXGDUY4wYq2GVBwUEu1uRh\"]},\"contracts/src/spaces/facets/owner/SpaceOwnerStorage.sol\":{\"keccak256\":\"0x150e03077204bb3bc21aae37b86f1b0513c55d07ab21cc22885f1376a1411317\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://12c4b4d27e0a93ea2a85646a754ffe5b6c02029efeadceafa0bf7a745e08dd1e\",\"dweb:/ipfs/QmWHR5yFEEaPo9SdtRWj13KeJS5uSRhjYdtZRKHx6CQqaN\"]},\"contracts/src/spaces/facets/owner/SpaceOwnerUriBase.sol\":{\"keccak256\":\"0xbc0f6bc661567cdc37620e295a3619aa5787a60fe6330fa6e2044314ab46fe49\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6eae9fe0a43035a47e600d7a476f314c0a9aebaa59754e851751a18b1736751f\",\"dweb:/ipfs/QmfN95VxwSkkvemoJ3w8gtzYjnehb1aocuu8zVLk6KPCBv\"]},\"contracts/src/utils/Validator.sol\":{\"keccak256\":\"0x4f469950ab5fb75049aec2b55f9f78ade4bbc3a35e072acaadb2fbe9eab6fb5f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5689fa29f227bdedd2f085799b197a3c807e08a6520b7bcc953bd4f0c286c306\",\"dweb:/ipfs/QmeVULCHP8i43FGhkMs6Y8zxJDiN59f3Pw3bRPc3QdcLCt\"]},\"lib/@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0xaf28a975a78550e45f65e559a3ad6a5ad43b9b8a37366999abd1b7084eb70721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7bd24e224f67f65bfadf85dc2929fa965456bb2415478bd0125471b5ce35245\",\"dweb:/ipfs/QmRaydGr8BTHs1kvaZfsNU69pKzUAGFrvABn1KiRSbE51y\"]},\"lib/@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x55f102ea785d8399c0e58d1108e2d289506dde18abc6db1b7f68c1f9f9bc5792\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e52e0a7765c943ef14e5bcf11e46e6139fa044be564881378349236bf2e3453\",\"dweb:/ipfs/QmZEeeXoFPW47amyP35gfzomF9DixqqTEPwzBakv6cZw6i\"]},\"lib/@openzeppelin/contracts/utils/cryptography/ECDSA.sol\":{\"keccak256\":\"0xeed0a08b0b091f528356cbc7245891a4c748682d4f6a18055e8e6ca77d12a6cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ba80ba06c8e6be852847e4c5f4492cef801feb6558ae09ed705ff2e04ea8b13c\",\"dweb:/ipfs/QmXRJDv3xHLVQCVXg1ZvR35QS9sij5y9NDWYzMfUfAdTHF\"]},\"lib/@openzeppelin/contracts/utils/cryptography/MessageHashUtils.sol\":{\"keccak256\":\"0xba333517a3add42cd35fe877656fc3dfcc9de53baa4f3aabbd6d12a92e4ea435\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2ceacff44c0fdc81e48e0e0b1db87a2076d3c1fb497341de077bf1da9f6b406c\",\"dweb:/ipfs/QmRUo1muMRAewxrKQ7TkXUtknyRoR57AyEkoPpiuZQ8FzX\"]},\"lib/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"]},\"lib/@openzeppelin/contracts/utils/math/Math.sol\":{\"keccak256\":\"0x005ec64c6313f0555d59e278f9a7a5ab2db5bdc72a027f255a37c327af1ec02d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ece9f0b9c8daca08c76b6b5405a6446b6f73b3a15fab7ff56e296cbd4a2c875\",\"dweb:/ipfs/QmQyRpyPRL5SQuAgj6SHmbir3foX65FJjbVTTQrA2EFg6L\"]},\"lib/@openzeppelin/contracts/utils/math/SafeCast.sol\":{\"keccak256\":\"0xe19a4d5f31d2861e7344e8e535e2feafb913d806d3e2b5fe7782741a2a7094fe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4aed79c0fa6f0546ed02f2f683e8f77f0fd2ed7eb34d8bbf3d373c9a6d95b13c\",\"dweb:/ipfs/QmWqVz6UAVqmnWU5pqYPt1o6iDEZyPaBraAA3rKfTTSfYj\"]},\"lib/@openzeppelin/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0x5f7e4076e175393767754387c962926577f1660dd9b810187b9002407656be72\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7d533a1c97cd43a57cd9c465f7ee8dd0e39ae93a8fb8ff8e5303a356b081cdcc\",\"dweb:/ipfs/QmVBEei6aTnvYNZp2CHYVNKyZS4q1KkjANfY39WVXZXVoT\"]},\"lib/solady/src/utils/LibString.sol\":{\"keccak256\":\"0xbb90caa572b7f65689b74867ec211fed8cde92714314101f4287d00a40d95ab2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://93d2fa323793f3a2044a58789ea73c82595bb181a449b507637d8a537f9d8a16\",\"dweb:/ipfs/Qmf4eAuQZTjARJMq2e2fXktpM2MSBow1JuMUPJbisEgZke\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AlreadyDisabled"},{"inputs":[],"type":"error","name":"AlreadyEnabled"},{"inputs":[],"type":"error","name":"ApprovalCallerNotOwnerNorApproved"},{"inputs":[],"type":"error","name":"ApprovalQueryForNonexistentToken"},{"inputs":[],"type":"error","name":"BalanceQueryForZeroAddress"},{"inputs":[],"type":"error","name":"ECDSAInvalidSignature"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"ECDSAInvalidSignatureLength"},{"inputs":[{"internalType":"bytes32","name":"s","type":"bytes32"}],"type":"error","name":"ECDSAInvalidSignatureS"},{"inputs":[],"type":"error","name":"GuardianEnabled"},{"inputs":[{"internalType":"uint32","name":"version","type":"uint32"}],"type":"error","name":"Initializable_AlreadyInitialized"},{"inputs":[],"type":"error","name":"Initializable_InInitializingState"},{"inputs":[],"type":"error","name":"Initializable_NotInInitializingState"},{"inputs":[],"type":"error","name":"Introspection_AlreadySupported"},{"inputs":[],"type":"error","name":"Introspection_NotSupported"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"currentNonce","type":"uint256"}],"type":"error","name":"InvalidAccountNonce"},{"inputs":[],"type":"error","name":"MintERC2309QuantityExceedsLimit"},{"inputs":[],"type":"error","name":"MintToZeroAddress"},{"inputs":[],"type":"error","name":"MintZeroQuantity"},{"inputs":[],"type":"error","name":"NotExternalAccount"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"Ownable__NotOwner"},{"inputs":[],"type":"error","name":"Ownable__ZeroAddress"},{"inputs":[],"type":"error","name":"OwnerQueryForNonexistentToken"},{"inputs":[],"type":"error","name":"OwnershipNotInitializedForExtraData"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"type":"error","name":"SafeCastOverflowedUintDowncast"},{"inputs":[],"type":"error","name":"SpaceOwner__DefaultUriNotSet"},{"inputs":[],"type":"error","name":"SpaceOwner__OnlyFactoryAllowed"},{"inputs":[],"type":"error","name":"SpaceOwner__OnlySpaceOwnerAllowed"},{"inputs":[],"type":"error","name":"SpaceOwner__SpaceNotFound"},{"inputs":[],"type":"error","name":"TransferCallerNotOwnerNorApproved"},{"inputs":[],"type":"error","name":"TransferFromIncorrectOwner"},{"inputs":[],"type":"error","name":"TransferToNonERC721ReceiverImplementer"},{"inputs":[],"type":"error","name":"TransferToZeroAddress"},{"inputs":[],"type":"error","name":"URIQueryForNonexistentToken"},{"inputs":[],"type":"error","name":"Validator__InvalidAddress"},{"inputs":[],"type":"error","name":"Validator__InvalidStringLength"},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"approved","type":"address","indexed":true},{"internalType":"uint256","name":"tokenId","type":"uint256","indexed":true}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"operator","type":"address","indexed":true},{"internalType":"bool","name":"approved","type":"bool","indexed":false}],"type":"event","name":"ApprovalForAll","anonymous":false},{"inputs":[{"internalType":"uint256","name":"fromTokenId","type":"uint256","indexed":true},{"internalType":"uint256","name":"toTokenId","type":"uint256","indexed":false},{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true}],"type":"event","name":"ConsecutiveTransfer","anonymous":false},{"inputs":[{"internalType":"address","name":"delegator","type":"address","indexed":true},{"internalType":"address","name":"fromDelegate","type":"address","indexed":true},{"internalType":"address","name":"toDelegate","type":"address","indexed":true}],"type":"event","name":"DelegateChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"delegate","type":"address","indexed":true},{"internalType":"uint256","name":"previousBalance","type":"uint256","indexed":false},{"internalType":"uint256","name":"newBalance","type":"uint256","indexed":false}],"type":"event","name":"DelegateVotesChanged","anonymous":false},{"inputs":[],"type":"event","name":"EIP712DomainChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"caller","type":"address","indexed":true},{"internalType":"bool","name":"enabled","type":"bool","indexed":true},{"internalType":"uint256","name":"cooldown","type":"uint256","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"GuardianUpdated","anonymous":false},{"inputs":[{"internalType":"uint32","name":"version","type":"uint32","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4","indexed":true}],"type":"event","name":"InterfaceAdded","anonymous":false},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4","indexed":true}],"type":"event","name":"InterfaceRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"string","name":"uri","type":"string","indexed":false}],"type":"event","name":"SpaceOwner__SetDefaultUri","anonymous":false},{"inputs":[{"internalType":"address","name":"factory","type":"address","indexed":false}],"type":"event","name":"SpaceOwner__SetFactory","anonymous":false},{"inputs":[{"internalType":"address","name":"space","type":"address","indexed":true}],"type":"event","name":"SpaceOwner__UpdateSpace","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"tokenId","type":"uint256","indexed":true}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"CLOCK_MODE","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"result","type":"bytes32"}]},{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"__ERC721A_init"},{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"string","name":"version","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"__SpaceOwner_init"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"payable","type":"function","name":"approve"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"clock","outputs":[{"internalType":"uint48","name":"","type":"uint48"}]},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"delegate"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"expiry","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"delegateBySig"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"delegates","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"eip712Domain","outputs":[{"internalType":"bytes1","name":"fields","type":"bytes1"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"verifyingContract","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256[]","name":"extensions","type":"uint256[]"}]},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getDefaultUri","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"timepoint","type":"uint256"}],"stateMutability":"view","type":"function","name":"getPastTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"timepoint","type":"uint256"}],"stateMutability":"view","type":"function","name":"getPastVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"space","type":"address"}],"stateMutability":"view","type":"function","name":"getSpaceInfo","outputs":[{"internalType":"struct ISpaceOwnerBase.Space","name":"","type":"tuple","components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"uri","type":"string"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"uint256","name":"createdAt","type":"uint256"},{"internalType":"string","name":"shortDescription","type":"string"},{"internalType":"string","name":"longDescription","type":"string"}]}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"getVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"stateMutability":"view","type":"function","name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"uri","type":"string"},{"internalType":"address","name":"space","type":"address"},{"internalType":"string","name":"shortDescription","type":"string"},{"internalType":"string","name":"longDescription","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"mintSpace","outputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"name","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"nextTokenId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"nonces","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"payable","type":"function","name":"safeTransferFrom"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"safeTransferFrom"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setApprovalForAll"},{"inputs":[{"internalType":"string","name":"uri","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"setDefaultUri"},{"inputs":[{"internalType":"address","name":"factory","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setFactory"},{"inputs":[],"stateMutability":"view","type":"function","name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"view","type":"function","name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"stateMutability":"payable","type":"function","name":"transferFrom"},{"inputs":[{"internalType":"address","name":"space","type":"address"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"uri","type":"string"},{"internalType":"string","name":"shortDescription","type":"string"},{"internalType":"string","name":"longDescription","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"updateSpaceInfo"}],"devdoc":{"kind":"dev","methods":{"CLOCK_MODE()":{"details":"Description of the clock"},"approve(address,uint256)":{"details":"Gives permission to `to` to transfer `tokenId` token to another account. See {ERC721A-_approve}. Requirements: - The caller must own the token or be an approved operator."},"balanceOf(address)":{"details":"Returns the number of tokens in `owner`'s account."},"clock()":{"details":"Clock used for flagging checkpoints. Can be overridden to implement timestamp based checkpoints (and voting)."},"delegate(address)":{"details":"Delegates votes from the sender to `delegatee`."},"delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)":{"details":"Delegates votes from signer to `delegatee`."},"delegates(address)":{"details":"Returns the delegate that `account` has chosen."},"eip712Domain()":{"details":"See {EIP-5267}. _Available since v4.9._"},"getApproved(uint256)":{"details":"Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist."},"getPastTotalSupply(uint256)":{"details":"Returns the total supply of votes available at a specific moment in the past. If the `clock()` is configured to use block numbers, this will return the value at the end of the corresponding block. NOTE: This value is the sum of all available votes, which is not necessarily the sum of all delegated votes. Votes that have not been delegated are still part of total supply, even though they would not participate in a vote."},"getPastVotes(address,uint256)":{"details":"Returns the amount of votes that `account` had at a specific moment in the past. If the `clock()` is configured to use block numbers, this will return the value at the end of the corresponding block."},"getSpaceInfo(address)":{"params":{"space":"The address of the space"},"returns":{"_0":"space The space info"}},"getVotes(address)":{"details":"Returns the current amount of votes that `account` has."},"isApprovedForAll(address,address)":{"details":"Returns if the `operator` is allowed to manage all of the assets of `owner`. See {setApprovalForAll}."},"mintSpace(string,string,address,string,string)":{"details":"Only the factory is allowed to mint spaces","params":{"longDescription":"The long description of the space","name":"The name of the space","shortDescription":"The short description of the space","space":"The address of the space","uri":"The URI of the space"},"returns":{"tokenId":"The token id of the minted space"}},"name()":{"details":"Returns the token collection name."},"ownerOf(uint256)":{"details":"Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist."},"safeTransferFrom(address,address,uint256)":{"details":"Equivalent to `safeTransferFrom(from, to, tokenId, '')`."},"safeTransferFrom(address,address,uint256,bytes)":{"details":"Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event."},"setApprovalForAll(address,bool)":{"details":"Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the caller. Emits an {ApprovalForAll} event."},"symbol()":{"details":"Returns the token collection symbol."},"tokenURI(uint256)":{"details":"Returns the Uniform Resource Identifier (URI) for `tokenId` token."},"totalSupply()":{"details":"Returns the total number of tokens in existence. Burned tokens will reduce the count. To get the total number of tokens minted, please see {_totalMinted}."},"transferFrom(address,address,uint256)":{"details":"Transfers `tokenId` from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event."},"updateSpaceInfo(address,string,string,string,string)":{"details":"Only the space owner is allowed to update the space info","params":{"longDescription":"The long description of the space","name":"The name of the space","shortDescription":"The short description of the space","space":"The address of the space","uri":"The URI of the space"}}},"version":1},"userdoc":{"kind":"user","methods":{"getDefaultUri()":{"notice":"Get the default URI"},"getFactory()":{"notice":"Get the factory address"},"getSpaceInfo(address)":{"notice":"Get the space info"},"mintSpace(string,string,address,string,string)":{"notice":"Mint a space"},"nextTokenId()":{"notice":"Get the next token id that will be used to mint a space"},"setDefaultUri(string)":{"notice":"Set the default URI"},"setFactory(address)":{"notice":"Set the factory address that is allowed to mint spaces"},"updateSpaceInfo(address,string,string,string,string)":{"notice":"Update the space info"}},"version":1}},"settings":{"remappings":["@openzeppelin/=lib/@openzeppelin/","@prb/math/=lib/@prb/math/src/","@prb/test/=lib/@prb/test/src/","account-abstraction/=lib/account-abstraction/contracts/","base64/=lib/base64/","ds-test/=lib/ds-test/src/","forge-std/=lib/forge-std/src/","hardhat-deploy/=lib/hardhat-deploy/","solady/=lib/solady/src/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"none","appendCBOR":false},"compilationTarget":{"contracts/src/spaces/facets/owner/SpaceOwner.sol":"SpaceOwner"},"evmVersion":"paris","libraries":{}},"sources":{"contracts/src/diamond/facets/Facet.sol":{"keccak256":"0x931702541a5e4a2756665e53baf1b04aa0418d5a9c635e519058905e21ae0c57","urls":["bzz-raw://b785043acac69be2d2545bc4492b2c08b6e931a53737f8508baf3f98c8743863","dweb:/ipfs/QmeLzqURWDmXHJftmMXRsywdJw96CNDB9DQmgTpG1woYvc"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/Checkpoints.sol":{"keccak256":"0x4b98db2e67e47ec59caa78fade51e9ec6fa33ee2592e46fed09d9167ebe76c8a","urls":["bzz-raw://72ec6949ee33fb9c137bba362b94af699762fadd66334128d1dd0dbcd4301bc6","dweb:/ipfs/QmQybe6k5K3gss4zzCPqoba6ZBZE5p8KJRoQ2RzkE91JRV"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/IERC5805.sol":{"keccak256":"0x8b3b84026610f99bcac6139359305a46c537edf377e44771b904c2bd35719ee3","urls":["bzz-raw://49a8e7af9b47b6bbd794ccb50380b8f9e9b84561d62bcbf16843dde55bab86e6","dweb:/ipfs/QmdBdYxvhwCwtqW9DfPa6Bw5PrYdzhuKQyJv4vcLsttqrV"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/IERC6372.sol":{"keccak256":"0xc3fa5c25bdd3db6126e04897496889e68a65749b050ae8fede0ff80e322aca86","urls":["bzz-raw://bcf56ae1474c9a3032f8b15b1bbbeeb50ac21c574047f846673d4aca9bf82db4","dweb:/ipfs/Qmcce1zD6TBWiMLXMDsFF6bUrwtVtharjwvAbtkMmoYRgd"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/IVotes.sol":{"keccak256":"0xef9a51a12d9c5a331de719be078e39858739a3d5043ebc20814d1331d8a7d8c3","urls":["bzz-raw://8a077058f77857cd2668fc97943dd64fdfd2463b8a0e163ef9973da8bb1f593a","dweb:/ipfs/QmXZavPSRakx4GHD9gDpDBWQDt1SL2hYvbARA62zVeUq2w"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/Votes.sol":{"keccak256":"0x583ee53b96d9ead23925281c765624a48e7a385942247c4da1ecc1052193ed67","urls":["bzz-raw://c5c8cc50c062867c32ad9e3d0b4ad847f22576809d9f704aa8ee72b7ab617462","dweb:/ipfs/QmSayHRuL6dwMfYNBNe29Sp63oeNDoemZttLWCv1urWCZc"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/VotesBase.sol":{"keccak256":"0x41049b5967fcceaf40dab9bb2863a701ba5aa68fa219321773028498c61e6add","urls":["bzz-raw://e63ecb4168e2b2f4819e606bf2b66195b48e42bd5d22a3def701dac016160112","dweb:/ipfs/QmVJxvxjkTE9cH44DRXCwGntEyPRgsVDBiw2AiCT1KNDBC"],"license":"MIT"},"contracts/src/diamond/facets/governance/votes/VotesStorage.sol":{"keccak256":"0x87a2f9c85f63fcfa8ce2dc14d5a9a6118b33fd7000fb988b300519dec9b89629","urls":["bzz-raw://daef1e04a36eb664ec08d4627a2038f3decbeac93b13a2c651b52681ef6f5f5e","dweb:/ipfs/QmbV5SXhZnUW52HLEbhNhKeRXDCyPR6zAJRa98Vh3m9ptF"],"license":"MIT"},"contracts/src/diamond/facets/initializable/Initializable.sol":{"keccak256":"0xe02e99665b5acb22d5c508c3bda97c35acd2597ce0a58569a19cc12f0010da90","urls":["bzz-raw://b586a51dbe63e8763ae0b2b3dadd5c8559f47bc8cbaa0e9fe52aaec4c3677552","dweb:/ipfs/QmRtaVikg6YDwzUAtY7WV793taZgT1ZxyMB4PLAEqGBeCC"],"license":"MIT"},"contracts/src/diamond/facets/initializable/InitializableStorage.sol":{"keccak256":"0xf8170e6977d685c218f65185478fbb9916e64f63aab1dcd195056438466f458a","urls":["bzz-raw://83ea3cf77f012eef93d10593e3beded36b449611063fd8dfbdb44e4346f87eb4","dweb:/ipfs/QmVasL7QnxXEmiUsLJzpfig8717zLUhZfyQxiBbFGDEVVg"],"license":"MIT"},"contracts/src/diamond/facets/introspection/IERC165.sol":{"keccak256":"0x486758ee326820b0dd468c6a7a90fda8d67d48d3114792c587cee0e8417b366b","urls":["bzz-raw://b695090abcec8c2d487d73961265030fa4f64ecd84f6d80b85c6c7d4d9142ea0","dweb:/ipfs/QmQTKuV2WEoy6vTCRxL39zEqubLUf9NhoC2BGB19CiYqRq"],"license":"MIT"},"contracts/src/diamond/facets/introspection/IntrospectionBase.sol":{"keccak256":"0x93ac0d2f738615e69dbcfd5fa6ac5840ec48329ac92094605638bcf2abd6708f","urls":["bzz-raw://fbcb2cd0e47b6ef39bec6cbdeedf6e292e8849d4e25f4bb6c72ee574446b02f1","dweb:/ipfs/QmcDwxFALaQBLbsGsjdttkQkE48PdKWq43XY7f34MxqZSw"],"license":"MIT"},"contracts/src/diamond/facets/introspection/IntrospectionStorage.sol":{"keccak256":"0x306f41ef86bc5050a28c1dbf855d3f6f623be4aebc0a0f96474dae85979f7763","urls":["bzz-raw://dbad6f8e6685690ae75f6c9066972a45400b45307245feab8990af18a4c38e91","dweb:/ipfs/QmcTUqiSL1z2nwokpNNsXQkjVTaFdFJiM2exguZpPDDXEM"],"license":"MIT"},"contracts/src/diamond/facets/ownable/IERC173.sol":{"keccak256":"0x677cebaa56ee33950d04ba5baef02188da026beb7cf669bdf580410cb1f1c303","urls":["bzz-raw://d5be56219a4ab8d9709db7ffb74c73ee1be268b8f77308ef7a72d8f2820fb30b","dweb:/ipfs/QmeTuAZMwRf3uRHMtHEd7M7LvGyRAEmoCikF4Pb6dCAKXd"],"license":"MIT"},"contracts/src/diamond/facets/ownable/OwnableBase.sol":{"keccak256":"0x272abaecc104d5f23d77a623cf1548620d24b0f447eb2a12144e27561ff489f2","urls":["bzz-raw://fcb8c20ff7346bdc5dba82e6680cc0ea64087460a12153e3b6c3416f6addf875","dweb:/ipfs/QmfEEufJBzudSDekQteQkb3CzmnzUPT3GDhNgVpHNC9xaf"],"license":"MIT"},"contracts/src/diamond/facets/ownable/OwnableStorage.sol":{"keccak256":"0xda650482ce08c04110366cb01408aaabd01383d9c504b7cacfb2674aae688dcd","urls":["bzz-raw://694f42ffb353fccaa1eadf91dee3a3cee7253e3f357bcba2b175fd7be701e27e","dweb:/ipfs/QmPxxVerATSYrNLp7snnSvNVsbLPm1wzHULhBbtR333eik"],"license":"MIT"},"contracts/src/diamond/facets/token/ERC721A/ERC721A.sol":{"keccak256":"0x5662ab29272ecaabdaf5792c368a71693fcad9df24566f9e470ff1ec3510fd8f","urls":["bzz-raw://2ef719ff8dce040daf5bcfe328f3463261fb3acfe5c41c589365143916748cc3","dweb:/ipfs/QmUm4PHj4y2237H7hnCwnfRyTWbp1DHWpc8GN26M6T4ToC"],"license":"MIT"},"contracts/src/diamond/facets/token/ERC721A/ERC721ABase.sol":{"keccak256":"0x27b65225578e0cd90b90ab4ce91c4dfe621b43a58df227d3fdb0494c8f317d62","urls":["bzz-raw://70db26d8735dd6b7e7a847712603f793728521ebd05ad8640d6068b395dce3ba","dweb:/ipfs/QmYeC1EM3XQWgHjQKpT41TksDFcCzr4Sz8JPRdagFms7mE"],"license":"MIT"},"contracts/src/diamond/facets/token/ERC721A/ERC721AStorage.sol":{"keccak256":"0x1f85619c07524883b96fd2f3ca92ea3e2343466c0832cc03f6eb1cbb828896f4","urls":["bzz-raw://06adf57b874d40a123eb3e7bf89cd7f49d29a93c142b26336263529ccd692e04","dweb:/ipfs/QmQAhsfGRBPuBcSE1mqocTvutK9c4NfJPsbN4XQXtbsLey"],"license":"MIT"},"contracts/src/diamond/facets/token/ERC721A/IERC721A.sol":{"keccak256":"0xb57dee608d37c98c32ac38fa3c84e77f5962cf39a0697815ad209edf55593782","urls":["bzz-raw://092750f101ae80c5bace9fd53ae87547a0aac6109cd58290609acd2ef489ce9d","dweb:/ipfs/QmREM18vUEQmcmnTSyR4XxHB9Ykqomc9RuCFZcWNiovgbz"],"license":"MIT"},"contracts/src/diamond/utils/Context.sol":{"keccak256":"0x4566c941f553d989324d4308c037fe0669062c746d6e5108ce533fcc8ffbcaac","urls":["bzz-raw://87908ef7e56c826210414cb25a50a3073188e96e6ac2afc2b56d0bba6abb48a7","dweb:/ipfs/QmT41NMs4REQxxeuR48JUcB39UTgcaKdUvizc2XawUF5aq"],"license":"MIT"},"contracts/src/diamond/utils/Nonces.sol":{"keccak256":"0xba683e7b1dc9bc812c0c33ce7efb8e7505a881ee475b8ef2230af11377418732","urls":["bzz-raw://69408950cf9d4fb74bbf79e475d338363ca4f7a492de5827b3f93a02da443732","dweb:/ipfs/QmT6nt6Dpp2stTjCDEzepf6unVE7bcetXdshPnwmJFfXaf"],"license":"MIT"},"contracts/src/diamond/utils/cryptography/EIP712.sol":{"keccak256":"0xa4854e007ca8e80368e578576d65d47cb4022a7c031bc7abb4d94df5498935eb","urls":["bzz-raw://ed66cebd356963dd8bc33459fea266da15cb87bd4f586399dba84b525e0fcd6a","dweb:/ipfs/QmXqgEnTnEusLhXXuycj73PZK1pRrw6ES4BQvEKfvKa2FR"],"license":"MIT"},"contracts/src/diamond/utils/cryptography/IERC5267.sol":{"keccak256":"0x29135f4d4e9e50c65240a1837a077ba44470aadd8c9bad0f5bb1cb32d50018e7","urls":["bzz-raw://91eb5c894de0b09144d3b1c689f72fb26d638eb2eaa3217396ed86d41610214f","dweb:/ipfs/Qmexr1dtSeFD8sbrbk3U8pp1WUL5Caq3VoeeHy6bwmxMbD"],"license":"MIT"},"contracts/src/spaces/facets/guardian/GuardianBase.sol":{"keccak256":"0xe76248dbf516fb6a32934062fac4f2b3e19f83ba1a4df04d55b55c15be0265d0","urls":["bzz-raw://a2059a7b6b82f2de1654ff8bca374e32fa000e613ffb706197edd09565cb7a70","dweb:/ipfs/QmUFTcFy64pFTwEwtGFrkoL84eZi7zVjAp46k1sWpAfUn5"],"license":"MIT"},"contracts/src/spaces/facets/guardian/GuardianStorage.sol":{"keccak256":"0xb6d7ae2fe80c40120223e660bf5888612f8e93c0e7dc70d6d2532d3e366f0674","urls":["bzz-raw://ff77c0e4ad11ae6967a46d67c38422e06e45eb4e06aa7d99d611b8e4672aae5f","dweb:/ipfs/QmfZui9wfZimGa4Q93zudgdit6ZUSgTET2WCKYWB7QkpVD"],"license":"MIT"},"contracts/src/spaces/facets/guardian/IGuardian.sol":{"keccak256":"0x7490883034a06f610a169e87f2bd15f5c904c87ea1eda80da63d17045b77b5bd","urls":["bzz-raw://44ea9689c8d31f5c31ebb470ac85f2d6be30d7698dbe4730454e19c5f72898f7","dweb:/ipfs/QmUsWEQ4qFif8GghZGT8b7K52WrTbSgfjZPpPGxFzhz2kr"],"license":"MIT"},"contracts/src/spaces/facets/owner/ISpaceOwner.sol":{"keccak256":"0x7baa36238144aae1068d9df8b28c6741cbcf1f26e53c0e429fc62c351623c1f4","urls":["bzz-raw://4d702b63539e714f343482f80de3f342d7870647cbeb01b42abab7dc9805683a","dweb:/ipfs/QmcTDjumaJfXvAoyT6G38meixc7omy6MUuX33FrRuc8hNw"],"license":"MIT"},"contracts/src/spaces/facets/owner/SpaceOwner.sol":{"keccak256":"0xb70a369ccc910d3d4397e48be446fb32e308ad951ed337edbd8300f5a1dd87c3","urls":["bzz-raw://5267c28f5aebfea915e5acce5f83b1f03588772094104f1817f676865ecef8a0","dweb:/ipfs/QmRQSjcgnspgPVwkJnQ6f4uL4oAc29eKBujVaeAcmy9Lt2"],"license":"MIT"},"contracts/src/spaces/facets/owner/SpaceOwnerBase.sol":{"keccak256":"0xa1cb5b0bc9aec89791654a4725f7c42798245a432f3f3a741e4999fd12020f77","urls":["bzz-raw://720a72562f1f8c129b3b276a4fb67cf403bc628db1534fed04e45a79b7773cb1","dweb:/ipfs/QmNu34EsvFQjbaE8MwdxkAn4iXGDUY4wYq2GVBwUEu1uRh"],"license":"MIT"},"contracts/src/spaces/facets/owner/SpaceOwnerStorage.sol":{"keccak256":"0x150e03077204bb3bc21aae37b86f1b0513c55d07ab21cc22885f1376a1411317","urls":["bzz-raw://12c4b4d27e0a93ea2a85646a754ffe5b6c02029efeadceafa0bf7a745e08dd1e","dweb:/ipfs/QmWHR5yFEEaPo9SdtRWj13KeJS5uSRhjYdtZRKHx6CQqaN"],"license":"MIT"},"contracts/src/spaces/facets/owner/SpaceOwnerUriBase.sol":{"keccak256":"0xbc0f6bc661567cdc37620e295a3619aa5787a60fe6330fa6e2044314ab46fe49","urls":["bzz-raw://6eae9fe0a43035a47e600d7a476f314c0a9aebaa59754e851751a18b1736751f","dweb:/ipfs/QmfN95VxwSkkvemoJ3w8gtzYjnehb1aocuu8zVLk6KPCBv"],"license":"MIT"},"contracts/src/utils/Validator.sol":{"keccak256":"0x4f469950ab5fb75049aec2b55f9f78ade4bbc3a35e072acaadb2fbe9eab6fb5f","urls":["bzz-raw://5689fa29f227bdedd2f085799b197a3c807e08a6520b7bcc953bd4f0c286c306","dweb:/ipfs/QmeVULCHP8i43FGhkMs6Y8zxJDiN59f3Pw3bRPc3QdcLCt"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/Address.sol":{"keccak256":"0xaf28a975a78550e45f65e559a3ad6a5ad43b9b8a37366999abd1b7084eb70721","urls":["bzz-raw://b7bd24e224f67f65bfadf85dc2929fa965456bb2415478bd0125471b5ce35245","dweb:/ipfs/QmRaydGr8BTHs1kvaZfsNU69pKzUAGFrvABn1KiRSbE51y"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/Strings.sol":{"keccak256":"0x55f102ea785d8399c0e58d1108e2d289506dde18abc6db1b7f68c1f9f9bc5792","urls":["bzz-raw://6e52e0a7765c943ef14e5bcf11e46e6139fa044be564881378349236bf2e3453","dweb:/ipfs/QmZEeeXoFPW47amyP35gfzomF9DixqqTEPwzBakv6cZw6i"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/cryptography/ECDSA.sol":{"keccak256":"0xeed0a08b0b091f528356cbc7245891a4c748682d4f6a18055e8e6ca77d12a6cf","urls":["bzz-raw://ba80ba06c8e6be852847e4c5f4492cef801feb6558ae09ed705ff2e04ea8b13c","dweb:/ipfs/QmXRJDv3xHLVQCVXg1ZvR35QS9sij5y9NDWYzMfUfAdTHF"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/cryptography/MessageHashUtils.sol":{"keccak256":"0xba333517a3add42cd35fe877656fc3dfcc9de53baa4f3aabbd6d12a92e4ea435","urls":["bzz-raw://2ceacff44c0fdc81e48e0e0b1db87a2076d3c1fb497341de077bf1da9f6b406c","dweb:/ipfs/QmRUo1muMRAewxrKQ7TkXUtknyRoR57AyEkoPpiuZQ8FzX"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b","urls":["bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df","dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/math/Math.sol":{"keccak256":"0x005ec64c6313f0555d59e278f9a7a5ab2db5bdc72a027f255a37c327af1ec02d","urls":["bzz-raw://4ece9f0b9c8daca08c76b6b5405a6446b6f73b3a15fab7ff56e296cbd4a2c875","dweb:/ipfs/QmQyRpyPRL5SQuAgj6SHmbir3foX65FJjbVTTQrA2EFg6L"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/math/SafeCast.sol":{"keccak256":"0xe19a4d5f31d2861e7344e8e535e2feafb913d806d3e2b5fe7782741a2a7094fe","urls":["bzz-raw://4aed79c0fa6f0546ed02f2f683e8f77f0fd2ed7eb34d8bbf3d373c9a6d95b13c","dweb:/ipfs/QmWqVz6UAVqmnWU5pqYPt1o6iDEZyPaBraAA3rKfTTSfYj"],"license":"MIT"},"lib/@openzeppelin/contracts/utils/math/SignedMath.sol":{"keccak256":"0x5f7e4076e175393767754387c962926577f1660dd9b810187b9002407656be72","urls":["bzz-raw://7d533a1c97cd43a57cd9c465f7ee8dd0e39ae93a8fb8ff8e5303a356b081cdcc","dweb:/ipfs/QmVBEei6aTnvYNZp2CHYVNKyZS4q1KkjANfY39WVXZXVoT"],"license":"MIT"},"lib/solady/src/utils/LibString.sol":{"keccak256":"0xbb90caa572b7f65689b74867ec211fed8cde92714314101f4287d00a40d95ab2","urls":["bzz-raw://93d2fa323793f3a2044a58789ea73c82595bb181a449b507637d8a537f9d8a16","dweb:/ipfs/Qmf4eAuQZTjARJMq2e2fXktpM2MSBow1JuMUPJbisEgZke"],"license":"MIT"}},"version":1},"id":220} \ No newline at end of file diff --git a/packages/generated/dev/abis/SpaceOwner.metadata.json b/packages/generated/dev/abis/SpaceOwner.metadata.json index 1468753ea..081e350a7 100644 --- a/packages/generated/dev/abis/SpaceOwner.metadata.json +++ b/packages/generated/dev/abis/SpaceOwner.metadata.json @@ -1626,10 +1626,10 @@ "license": "MIT" }, "contracts/src/spaces/facets/owner/SpaceOwnerUriBase.sol": { - "keccak256": "0x33836143f0920869898e15cf3c757d749a374689bab39f49931965169ea96c18", + "keccak256": "0xbc0f6bc661567cdc37620e295a3619aa5787a60fe6330fa6e2044314ab46fe49", "urls": [ - "bzz-raw://105995675fa7ed7a6032743e85166fa4d35efb2e214fdd5277b403b440507fdf", - "dweb:/ipfs/QmQnJpp7Juz35RPAYWBiMUPh7CnTEUDwoHA2x7vx5vkcPL" + "bzz-raw://6eae9fe0a43035a47e600d7a476f314c0a9aebaa59754e851751a18b1736751f", + "dweb:/ipfs/QmfN95VxwSkkvemoJ3w8gtzYjnehb1aocuu8zVLk6KPCBv" ], "license": "MIT" }, @@ -1705,14 +1705,6 @@ ], "license": "MIT" }, - "lib/base64/base64.sol": { - "keccak256": "0xa73959e6ef0b693e4423a562e612370160b934a75e618361ddd8c9c4b8ddbaaf", - "urls": [ - "bzz-raw://17c12e16d8d66f3af15d8787920bd41ca6c1e7517a212a6b9cebd4b6d38f36fe", - "dweb:/ipfs/QmcXMnZUXEz6LRKsm3CSvqdPboAzmezavi8bTg2dRxM2yE" - ], - "license": "MIT" - }, "lib/solady/src/utils/LibString.sol": { "keccak256": "0xbb90caa572b7f65689b74867ec211fed8cde92714314101f4287d00a40d95ab2", "urls": [ diff --git a/remappings.txt b/remappings.txt index 6520e722b..f7c183c04 100644 --- a/remappings.txt +++ b/remappings.txt @@ -1,6 +1,5 @@ @openzeppelin/=lib/@openzeppelin/ account-abstraction/=lib/account-abstraction/contracts/ -base64/=lib/base64/ ds-test/=lib/ds-test/src/ forge-std/=lib/forge-std/src/ hardhat-deploy/=lib/hardhat-deploy/ diff --git a/scripts/copyLibs.js b/scripts/copyLibs.js index 91956cd96..d1e9d5de3 100644 --- a/scripts/copyLibs.js +++ b/scripts/copyLibs.js @@ -4,7 +4,6 @@ const path = require('path') const CONTRACT_LIBS = [ '@openzeppelin', 'account-abstraction/contracts', - 'base64', 'ds-test', 'forge-std/src', 'hardhat-deploy', diff --git a/yarn.lock b/yarn.lock index 238d8652c..bf23687ae 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3525,9 +3525,8 @@ __metadata: "@prb/math": ^4.0.3 "@prb/test": ^0.6.4 account-abstraction: "github:eth-infinitism/account-abstraction" - base64: "github:Brechtpd/base64" ds-test: "github:dapphub/ds-test" - forge-std: "github:foundry-rs/forge-std#v1" + forge-std: "github:foundry-rs/forge-std#v1.9.1" prettier: ^2.8.8 prettier-plugin-solidity: ^1.3.1 solady: ^0.0.228 @@ -6658,13 +6657,6 @@ __metadata: languageName: node linkType: hard -"base64@github:Brechtpd/base64": - version: 1.1.0 - resolution: "base64@https://github.com/Brechtpd/base64.git#commit=4d85607b18d981acff392d2e99ba654305552a97" - checksum: 833f768c1d8b2b9ebbeb05b869bc0d105624dd91f10fa9eb2975a174feb957b6d95cb343eeb6762a6874a5629f6cfdc49fc78fca1a1fbf8c75f80d559331ab35 - languageName: node - linkType: hard - "bech32@npm:1.1.4": version: 1.1.4 resolution: "bech32@npm:1.1.4" @@ -10101,10 +10093,10 @@ __metadata: languageName: node linkType: hard -"forge-std@github:foundry-rs/forge-std#v1": - version: 1.7.6 - resolution: "forge-std@https://github.com/foundry-rs/forge-std.git#commit=ae570fec082bfe1c1f45b0acca4a2b4f84d345ce" - checksum: fa42ca0255b610bc3f0081d3d53b191fa9986ada1870efb0f18197f1e19c83c7b0d4ad50c8e073e3980e83b77d7a5841cbe09692a1e72b57b2e48f51c46e8398 +"forge-std@github:foundry-rs/forge-std#v1.9.1": + version: 1.9.1 + resolution: "forge-std@https://github.com/foundry-rs/forge-std.git#commit=07263d193d621c4b2b0ce8b4d54af58f6957d97d" + checksum: 282ed0b5ff761edf536a8791fe182e847b610273c806fbc7b7d485831b3458ebafd69ba551b22751cb9d5c5f67db430e3ced37ef9ff0b9a292e2da2901eb0f71 languageName: node linkType: hard